Так мы обычно настраиваем маршруты хабов в файле Startup.cs
app.UseSignalR(routes =>
{
routes.MapHub<UserEventsHub>("/usereventshub");
});
Все это нормально, если мы запускаем приложение в консоли или как корень сайта под IIS. Если мы размещаем IIS в поддомене, клиентские приложения не могут найти концентратор.
Я проверил документацию, и она нигде не говорит об этом. Я предполагаю, что могу изменить PathString следующим образом:
app.UseSignalR(routes =>
{
routes.MapHub<UserEventsHub>("<URL-WITH-SUB-DOMAIN>/usereventshub");
});
И, очевидно, я могу изменить значение строки, используя параметр в appsettings. Но я хотел выяснить, что является лучшей практикой для этого? Есть ли способ, которым сигнализатор может обнаружить, что он размещен как поддомен, и считать его корневым. По какой-то причине я предположил, что PathString относится к корню веб-приложения. Очевидно, это не
Сводка AspNetCore 3.0
Когда приложение размещено на serverName.com, найден URL-адрес концентратора.
При размещении на serverName. com / subdomain, концентратор не найден