apache2: Не удалось достоверно определить полное доменное имя сервера, используется 127.0.1.1 для ServerName

apache2: Не удалось достоверно определить полное доменное имя сервера, используется 127.0.1.1 для ServerName

Я постоянно получаю это предупреждение при (пере)запуске Apache.

* Restarting web server apache2 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName [ OK ]

Вот содержимое моего etc/hostsфайла:

#127.0.0.1  hpdtp-ubuntu910
#testproject.localhost  localhost.localdomain   localhost
#127.0.1.1  hpdtp-ubuntu910

127.0.0.1   localhost
127.0.0.1   testproject.localhost
127.0.1.1   hpdtp-ubuntu910



# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Вот содержимое моего /etc/apache2/sites-enabled/000-defaultфайла:

<VirtualHost *:80>
  ServerName testproject.localhost
  DocumentRoot "/home/morpheous/work/websites/testproject/web"
  DirectoryIndex index.php
  <Directory "/home/morpheous/work/websites/testproject/web">
    AllowOverride All
    Allow from All
  </Directory>

  Alias /sf /lib/vendor/symfony/symfony-1.3.2/data/web/sf
  <Directory "/lib/vendor/symfony/symfony-1.3.2/data/web/sf">
    AllowOverride All
    Allow from All
  </Directory>
</VirtualHost>

Когда я захожу на сайт http://testproject.localhost, я вижу пустую страницу.

Может ли кто-нибудь заметить, что я делаю не так?

решение1

По умолчанию Ubuntu не указывает ServerName в конфигурации Apache, потому что он не знает имени вашего сервера. Он пытается выполнить обратный поиск по вашему IP-адресу, который ничего не возвращает, поэтому он просто должен использовать IP-адрес в качествеИмя сервера.

Чтобы исправить это, добавьте директиву ServerNameвне любого виртуального хоста- например, в /etc/apache2/httpd.conf, или настроить обратный ответ DNS для вашего основного IP-адреса - в данном случае 127.0.1.1

Вполне нормально также игнорировать это.

решение2

Вот быстрое решение:

echo ServerName $HOSTNAME > /etc/apache2/conf.d/fqdn

решение3

Другой способ обойти это предупреждение — поместить полное доменное имя в 127.0.1.1строку /etc/hosts. Это даже не обязательно должно быть полное доменное имя, которое будет фактически разрешаться во что-либо на сервере DNS.

127.0.1.1  hpdtp-ubuntu910.lan  hpdtp-ubuntu910

сработает, а также сохранит поведение любых программ, которые не ожидают дополнительных .lan. Порядок важен; имена с большим количеством уровней должны быть указаны первыми, как в этом примере, где адрес .lanидет перед другим адресом.

решение4

Настройка ServerNameв httpd.conf у меня не сработала. Я исправил это, установив ServerName 127.0.0.1в /etc/apache2/conf.d/name.

Я использую Ubuntu 12.10 Alpha3 и определил ServerNameоба места.

Источник:http://linuxconfig.net/manual-howto/error-solution-could-not-reliably-determine-the-servers-fully-qualified-domain-name.html

Связанный контент