Может ли WebORB «поделиться» портом с другим сайтом в IIS? - PullRequest
0 голосов
/ 12 января 2012

Я использую WebORB для .NET, и у меня не было проблем с тем, чтобы он работал на порте по умолчанию (2037) в моей среде разработки.

При развертывании в промежуточной среде и попыткедоступ к нему через общедоступный Интернет, этот порт заблокирован во многих местах по пути, так как это необычный порт, и я наблюдаю красный логотип WebORB с сообщением «не удается подключиться к серверу обмена сообщениями» при доступе к консоли WebORB.

Открытие порта является частичным решением, но любой, кто обращается к приложениям WebORB, также должен убедиться, что он не блокирует этот порт ... так что это не совсем правильное решение.

Мне удалосьзаставить WebORB работать на порте 443 (который используется для SSL, и поэтому почти никогда не блокируется), но только если у меня нет других сайтов в IIS с привязкой порта 443.

Это также неприемлемо, так как я в конечном итоге будуИметь другой сайт на том же сервере с привязкой порта 443.

Итак, мой вопрос: возможно ли запустить WebORB на p?ort 443 (или 80), когда другой сайт в IIS также связан с этим портом?

Обновить следующий ответ

Я на сервере 2008R2, и, следовательно, IIS7.5, и я 'Я предпочитаю запускать мой веб-сайт в интегрированном режиме.В инструкциях в первой статье упоминается добавление карты сценариев с подстановочными символами для Isapi.dll - это будет вызываться только в классическом режиме.

Я добавил все записи, которые предлагает статья, и настроил свой сайтиспользовать порт 80. Существуют другие сайты, связанные с портом 80 в IIS.

Когда я перехожу к консоли WebORB, я наблюдаю то же поведение, которое я видел перед добавлением новых обработчиков RTMPT - красный логотип WebORBи нет записей, отображаемых на панели «Сервер обмена сообщениями».Тем не менее, я вижу «Плохой запрос, поддерживается только RTMPT».сообщение при переходе к ~ / open / 1, и моя страница Diagnics.aspx выглядит нормально.

В журнале я вижу следующее:

...

ИНФОРМАЦИЯ О WEBORB: добавление дочерней области для - \ root

ИНФОРМАЦИЯ О WEBORB: зарегистрированная область - \ root ИНФОРМАЦИЯ О WEBORB: Сервер обмена сообщениями WebORB 4.4.0.0 (c) 2003-2010 Midnight Coders, Inc.

ИНФОРМАЦИЯ О WEBORB: работает - False

ИСКЛЮЧЕНИЕ WEBORB: System.Net.Sockets.SocketException (0x80004005): Предпринята попытка получить доступ к сокету способом, запрещенным его правами доступа в Системе.Net.Sockets.Socket.DoBind (EndPoint endPointSnapshot, SocketAddress socketAddress) в System.Net.Sockets.Socket.Bind (EndPoint localEP) в Weborb.Messaging.BaseRTMPServer.start ()

ВЕБОРНАЯ ИНФОРМАЦИЯ:завершение работы сервера сообщений WebORB

ИНФОРМАЦИЯ О WEBORB: тип загрузки: Weborb.Management.ServiceBrowser.Browser.AssemblyBrowser

...

Нужно ли изменять какие-либодругой конфиг, чтобы разрешить консоли использовать RTMPT?

Кроме того, учитывая, что входящие запросы должны быть через HTTP, нет ли способа рассмотреть заголовки хоста?

1 Ответ

0 голосов
/ 12 января 2012

вы спрашиваете, можете ли вы маршрутизировать соединения RTMP через порт 80 или 443. Поскольку эти порты управляются IIS, входящие соединения должны быть на основе HTTP. Ваши клиенты RTMP могут подключаться через порт 80 или 443, используя RTMPT или RTMPS соответственно. В этом случае вам не нужно «запускать WebORB на этих портах», а вместо этого настроить WebORB для использования RTMPT или RTMPS. Пожалуйста, смотрите следующий документ:

Настройка RTMPT в WebORB: http://www.themidnightcoders.com/fileadmin/docs/dotnet/v4/guide/rtmpt.htm

Настройка RTMPS в WebORB: http://www.themidnightcoders.com/fileadmin/docs/dotnet/v4/guide/rtmps_support.htm

Надеюсь, это поможет.

ОБНОВЛЕНИЕ: Если целью является маршрутизация трафика консоли управления через RTMPT, она не будет работать с текущей выпущенной версией. Консоль может динамически определять порт RTMP, но она будет придерживаться протокола RTMP и не имеет кода для переключения на RTMPT. Это то, что мы рассмотрим. Что касается исключения, которое вы получаете, это происходит потому, что порт, указанный вами в Global.asax, уже занят каким-то другим процессом.

...