среда, 29 октября 2008 г.

Apache и VirtualHost



В процессе настройки машины с полусотней виртуальных хостов столкнулся с проблемой: при проверке синтаксиса конфиг-файла появились множественные сообщения вида:

_default_ VirtualHost overlap on port 80, the first has precedence

Причем вот только недавно все работало!


Поиск в гугле дал только один вариант ответа: смотрите директиву NameVirtualHost. Но у меня она была настроена правильно:

NameVirtualHost *:80

После перепроверки всех конфигураций виртуальных хостов оказалось, что в одной-единственной записи я допустил опечатку - написал
VirtualHost *
вместо
VirtualHost *:80

И это привело к неработоспособности всех виртуальных хостов!

Так что внимательность и внимательность!

11 комментариев:

  1. Спасибо, пригодилось!

    ОтветитьУдалить
  2. Спасибо, спас мою душу:)

    ОтветитьУдалить
  3. Анонимный4 июня 2013 г., 13:08

    О, и на моем сервере приглашенный одмин так порезвился, после чего разводил руками и бормотал что-то про херового хостера и "слетевшие настройки", а варнинги при релоаде апача мы не читаем, зачем?
    Спасибо, всьо снова в строю!

    ОтветитьУдалить
  4. У меня все равно так пишит (

    ОтветитьУдалить
    Ответы
    1. Возможно косяк тут:
      файл ssl.conf
      ##
      ## SSL Virtual Host Context
      ##



      нужно "_default_" поменять на "*"

      Удалить
    2. парсер съел текст - вот VirtualHost *:443

      Удалить
  5. Помогло, благодарю! Нигде долго не мог найти ответа!

    ОтветитьУдалить
  6. Анонимный25 июня 2015 г., 17:02

    И мне пригодилось. Спасибо за эту подсказку.

    ОтветитьУдалить
  7. А у меня просто был закомментирован "NameVirtualHost *:80"

    ОтветитьУдалить
    Ответы
    1. У меня аналогично, проблема была в закомменченном "NameVirtualHost *:80".
      Выходила такая же ошибка, + доступен был только первый виртуалхост, второй не определялся.

      Удалить