Вопрос

Я использую Apache2, и при перезагрузке/перезапуске сервера я получаю это предупреждение:

apache2: Could not reliably determine the server's fully qualified domain name, using (my FQDN) for ServerName

Все работает нормально, но я пытаюсь выяснить, в чем причина ошибки.Я беру исходник, чтобы посмотреть, смогу ли его найти, но поскольку мой C не очень хорош....

Некоторые примечания:

  • Если я изменю имя хоста системы, Apache будет использовать новое имя хоста.
  • у меня есть ServerName набор;это то же самое, что имя хоста
  • У меня статический уникальный IP-адрес. dig (hostname) возвращает (мой IP), dig -x (my ip) возвращает (имя хоста)
  • Мой файл хостов правильный

Версии:

Apache/2.2.9
Linux 2.6.24-23-xen x86_64
Description:    Debian GNU/Linux 5.0 (lenny)

Есть идеи?

Это было полезно?

Решение

Вы уверены, что у вас есть ServerName директива с правильным значением - вне любого <VirtualHost> блоки?(Вам также понадобится ServerName внутри каждого <VirtualHost> заблокировать, конечно)

Когда Apache выдает это сообщение об ошибке, обычно это означает, что он не находит ServerName для сервера в целом.Если эта директива установлена ​​правильно, я не могу себе представить, почему Apache все еще будет жаловаться...

Другие советы

В Debian имя хоста задается при запуске благодаря сценарию /etc/init.d/hostname.sh, который использует файл /etc/hostname.Мы можем использовать этот файл для обновления имени хоста компьютера и его полного доменного имени (полного доменного имени).

Если ServerName в вашем виртуальном хосте — my-computer.my-domain.ext, обязательно скопируйте точное имя в /etc/hosts

Осторожность: в файле /etc/hosts необходимо соблюдать порядок имени хоста и полного доменного имени.Сначала полное доменное имя, затем имя хоста и в конце локальный хост.

~$ echo "my-computer" > /etc/hostname
~$ echo "127.0.0.1 my-computer.my-domain.ext my-computer localhost" > /etc/hosts
~$ /etc/init.d/hostname.sh

Вы можете проверить изменение с помощью следующих строк:

~$ hostname
my-computer
~$ hostname --fqdn
my-computer.my-domain.ext

Старое имя хоста все еще может присутствовать в командной строке.Просто выйдите из системы, а затем войдите в систему, чтобы она исчезла.

Для получения дополнительной информации о настройке имени хоста и полного доменного имени в Debian (что также предотвращает появление предупреждения) проверьте следующее: http://movealong.org/hostname.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top