IIS и Apache на одном сервере и на 80 порту

  • Вторник, 12 сентября 2006

Примерно чуть больше полугода назад пришлось мне на один сервер установить веб сервер Apache и IIS6. По началу, я сказал: раз плюнуть (разведём веб сервера по разным IP адресам и дело в шляпе). Но не тут-то было...

Основная цель в том, что бы оба веб сервера сидели на 80 порту. Так как на днях мне пришлось выполнить этот трюк ещё раз, то решил рассказать о нем подробнее. Начну с самого начала: имеется сервер на котором установлена Windows 2003 и 2 сетевые карточки. На каждую карточку прописан свой IP адрес.

Задача простая:

  1. IIS должен сидеть на одном IP и слушать 80-й порт.
  2. Apache должен сидеть на другом IP и тоже слушать 80-й порт.

Вот тут-то и начинаются грабли. Дело в том, что IIS сервер, по умолчанию, делает binding (привязку) ко всем IP адресам которые видны в системе. Даже если пройтись по всем установкам IIS и везде принудительно прописать один IP адрес, этого будет не достаточно.

Решить эту проблему поможет нам утиллита Httpcfg.exe из файла Support.cab, находящегося в директории Support\Tools оригинального диска диске Windows Server 2003.

Теперь пару слов о том, как работать с Httpcfg.exe. Есть одна маленькая особенность. Если у вас на сервере есть больше двух IP адресов, и вы хотите, что бы ваш IIS слушал сразу по нескольким адресам, то надо будет прописать каждый адрес.

Для определения на каком IP будет работать IIS, выходим в командную строку и запускаем:

httpcfg set iplisten -i xxx.xxx.x.x

Где xxx.xxx.x.x — IP адрес на котором будет работать IIS. Если всё прошло нормально, то система выдаст следующий результат:

HttpSetServiceConfiguration completed with 0

Что-бы проверить результат запускаем:

httpcfg query iplisten

После выполнения данной процедуры, выполняем следующую команду:

net stop http /y

и

net start w3svc

Все, теперь наш IIS работает только на том IP адресе, который мы ему выделили. В свою очередь, в конфигурационном файле Apache (httpd.conf) настраиваем, что бы он работал по другому IP. Настройка должна выглядеть примерно так:

Listen 194.90.1.5:80

Все, теперь можно и кофе выпить.

По материалам сайта: Трюки Админа

Joomla!® CMS — пожалуй, лучшая система управления контентом с открытым исходным кодом

Логотип Joomla

Joomla! — это больше, чем просто программное обеспечение, это люди, включающие разработчиков, дизайнеров, системных администраторов, переводчиков, копирайтеров, и, что самое главное — простых пользователей.

Мы рады пригласить вас в ряды нашего сообщества!

Свернуть

Коротко о главном в Joomla

Новости портала

Новое в блогах

Видео

Форум о Joomla