У меня есть еще одна служба, которая должна использовать несколько портов на одном IP-адресе сервера. Когда IIS запускается, он использует все неиспользуемые IP-адреса, поэтому другая служба не может привязать свой IP-адрес. Если я сначала запускаю другую службу, она сможет использовать IP, но я не могу полагаться на порядок запуска служб или на то, что их не нужно будет перезапускать в какой-то момент. Есть ли способ заставить IIS вообще не использовать IP-адрес?
По-видимому, в IIS6 настройка пользовательского интерфейса нарушена, и это нужно сделать используя httpcfg из которых суть:
Введите следующее, где xxx.xxx.x.x - это IP-адрес, который вы хотите добавить:
httpcfg set iplisten -i xxx.xxx.x.x
В случае успеха Httpcfg возвращает следующее: HttpSetServiceConfiguration завершено с 0
Чтобы просмотреть дополнительные коды состояния, см. Справку Httpcfg. После добавления IP-адреса используйте следующую команду для его вывода:
httpcfg query iplisten
Httpcfg возвращает следующее: IP: xxx.xxx.x.x. Перезапустите службу
Я наконец нашел ответ:
Есть утилита под названием httpcfg.exe
это можно использовать, чтобы указать, какие IP-адреса IIS будет прослушивать.
Скачал инструменты поддержки ( http://msdn.microsoft.com/en-us/library/windows/desktop/aa364478%28v=vs.85%29.aspx ) и использовал httpcfg.exe, как описано в нескольких сообщениях (т.е. остановите службу http, добавьте желаемые номера IP, за исключением того, который мне нужно было привязать в другом месте). Я дошел до того, что
httpcfg query iplisten
больше не указан мой номер исключения. Однако бег
netstat -anb -p tcp >netstat.txt
и просмотр netstat.txt показал, что PID 4 все еще прослушивает порт 80 (и 443) на ВСЕХ IP-номерах через 0.0.0.0. Таким образом, номер IP, который мне нужно было отделить, еще не был доступен для использования.
Последним шагом было явное УДАЛЕНИЕ 0.0.0.0 - даже если его не было в списке iplisten.
net stop http /y
httpcfg.exe delete iplisten -i 0.0.0.0:80
iisreset.exe
ЭТО сработало сразу. Кстати, перезагрузка сервера не требуется.
Конечно. Запустите Internet Information Services Manager. Расширяйте, пока не увидите свои сайты в разделе «Веб-сайты».
Для каждого сайта щелкните правой кнопкой мыши и выберите «Свойства». На вкладке «Веб-сайт» нажмите «Дополнительно» рядом с IP-адресом и введите только те адреса, которые вы хотите использовать (вместо значения по умолчанию «Все неназначенные»).