Как одновременно запустить IIS и WMS на одном порту

24/11/09 в 09:35 k0ev опубликовал в разделе Soft, Кодинг

soft/Как одновременно запустить IIS и WMS на одном порту (wms iis 00 wmv flv logos)Несколько дней назад на работе пришлось столкнуться с не тривиальной задачей: запустить одновременно два продукта от Microsoft.

На рабочем сайте планировалось перейти с Windows Media streaming на более современный – Flash Video streaming. Но выключать Windows Media не планировалось, и надо было построить систему, которая бы отдавала оба формата на 80 порту.

Проблема состояла в том, что отдачей WMV видео занимается Windows Media Services, который бежит на 80 порту.

Streaming Flash Video делает Internet Information Services, который планировалось также запустить на 80 порту.

Вот тут и появляется проблема. Оба продукта категорически не желали работать на одном порту, даже будучи разделенными по hostname. WMS категорические никого не пускал на порт 80.

Решение как всегда было найдено у всезнающего Google.

Что нам понадобится: установочный диск Windows Server и 2 IP.

Перво-наперво необходимо дать серверу 2 разных адреса IP. Это может быть как два абсолютно разных адреса на двух сетевых интерфейсах, так и один сетевой интерфейс с двумя виртуальными адресами (абсолютно неважно будет это WAN и LAN или два WAN). Для примера будем запускать IIS на 172.16.2.1 и WMS на 172.16.2.2

  1. Всем веб-сайтам бегущим в IIS  определяем Web Site Identification IP Address 172.16.2.1. Сайты, которым не был задан определенный IP, в дальнейшем могут вести себя “не адекватно”. Если вы используете Exchange, то сайту с папками Exchange и public, в качестве второго IP необходимо дать второй IP – 127.0.0.1
    soft/Как одновременно запустить IIS и WMS на одном порту (wms iis 01 309x300)
  2. Переходим в command line  и из папки \inetpub\adminscripts запускаем команду
    1
    cscript adsutil.vbs set w3svc/disablesocketpooling true
  3. Останавливаем WWW Publishing service
    Останавливаем и перезапускаем IIS Admin Service
    Запускаем WWW Publishing Service
    soft/Как одновременно запустить IIS и WMS на одном порту (wms iis 02 394x300)
  4. С диска Windows Server устанавливаем Support Tools (папка \support\tools\suptools.msi)
  5. Останавливаем HTTP Service
    1
    net stop http /y

    Также остановятся WWW Service и HTTP SSL Service

  6. Из папки куда были установлены Support Tools запускаем команду
    1
    httpcfg set iplisten -i 172.16.2.1
  7. Перезапускаем сервисы которые были остановлены в п.5. При запуске WWW Service также запустятся все зависящие сервисы
    1
    net start w3svc

    Если вы пользуетесь Exchange, то необходимо запустить и его.

  8. Переключаемся в WMS и определяем IP и порт.
    1. Computer Name->Properties->Control Protocol
    2. Right Click на WMS HTTP Server Controls Protocol -> Properties
    3. General->Allow Selected IP address to use this protocol
    4. Check 172.16.2.2
    5. Use Other Port -> 80
  9. Запускаем WMS

Все, теперь и IIS и WMS должны бежать на 80 порту

Я настроил таким образом 2 разных сервера. Не знаю почему, но на обоих серверах мне пришлось проделать эту операцию два раза с начала до конца. Только после этого все заработало. Имейте ввиду ;-)

Метки: , , , , , , , , , ,

Вы можете оценить 
или почитать еще что нибудь интересное

3 комментария на “Как одновременно запустить IIS и WMS на одном порту”

  1. Попрошу побольше таких постов, хоть в данном случае и являлся участником событий:)

  2. @Ozzik, наблюдатель не участник :-)

  3. @k0ev, советчик:)

Get Adobe Flash playerPlugin by wpburn.com wordpress themes