Не удалось надежно определить полное доменное имя сервера


110

Я только что установил Apache 2.2.17 и использую его впервые.

Теперь, когда я пытаюсь запустить сервер с помощью команды, service httpd startон выдает мне сообщение:

httpd: не удалось надежно определить полное доменное имя сервера, используя :: 1 для ServerName

Теперь я думаю, что мне нужно установить ServerName и IP-адрес при поиске в Google. Но я не знаю, в какой файл установить.

Как я могу исправить эту проблему?

Ответы:


66

Да, вы должны установить ServerName:

http://wiki.apache.org/httpd/CouldNotDetermineServerName

http://httpd.apache.org/docs/current/mod/core.html#servername

Вы можете найти информацию о макетах, используемых различными дистрибутивами httpd здесь:

http://wiki.apache.org/httpd/DistrosDefaultLayout

В вашем случае файл для редактирования - /etc/httpd/conf/httpd.conf


Привет, спасибо за ваше программное обеспечение, я отредактировал /etc/httpd/conf/httpd.conf и попытался установить ServerName следующим образом Listen 80 NameVirtualHost 172.20.30.40:80 <VirtualHost 172.20.30.40:80> ServerName www.example1.com DocumentRoot / home / user / Softwares / mysite / </VirtualHost>** Но все же я получаю сообщение об ошибке ниже .. ** Запуск httpd: Предупреждение: DocumentRoot [/ home / user / Softwares / mysite] не существует httpd: Не удалось надежно определить сервер полностью квалифицированное доменное имя, используя :: 1 для ServerName
mahesh

81
  1. sudo vim /etc/apache2/httpd.conf
  2. Вставьте следующую строку в httpd.conf: ServerName localhost
  3. Просто перезапустите Apache: sudo /etc/init.d/apache2 restart

2
На моем RPi мне пришлось поместить файл httpd.conf в /etc/apache2/conf.d, чтобы он работал.
samkass

Используя Ubuntu 13.04, мне пришлось поместить его в /etc/apache2/conf.d/httpd.conf, больше ничего не работало ...
user1853181

Спасибо, это тоже решило мою проблему. Недавно я установил фактическое имя хоста в / etc / hosts, и это сломало apache, пока я не установил ServerName localhost в глобальном контексте. Теперь виртуальный хост снова работает, и сертификат SSL обслуживается правильно.
AaronM

15

Я НЕ ошибался в ServerName. Внутри вашей конфигурации VirtualHost, которая вызывает это предупреждающее сообщение, это общее в верхней части вашего httpd.conf, которое по умолчанию прокомментировано .

+ Изменить

#ServerName www.example.com:80

кому:

  ServerName 127.0.0.1:80

10

Под Debian Squeeze;

  1. Отредактируйте файл конфигурации Apache2: vim /etc/apache2/apache2.conf
  2. Вставьте следующую строку в apache2.conf: ServerName localhost
  3. Перезапустите Apache2: перезапустите apache2ctl или перезапустите /etc/init.d/apache2

Должно работать нормально (в моем случае это решило проблему)

tks noodl за ссылку на разные раскладки. :)


4

Другой вариант - убедиться, что полное имя хоста (FQDN) указано в / etc / hosts. Это сработало для меня в Ubuntu v11.10 без изменения конфигурации Apache по умолчанию.


4
  1. sudo nano /etc/apache2/httpd.conf
  2. поиск текста ServerNameв редакторе nano<Ctrl + W>
  3. Вставьте следующую строку в httpd.conf: ServerName localhost
  4. Просто перезапустите Apache: sudo /usr/sbin/apachectl restart

3

"Чтобы решить эту проблему, вам нужно установить ServerName.

1: $ vim /etc/apache2/conf.d/name Например, установите add ServerName localhost или любое другое имя:

2: ServerName localhost Перезапустите Apache 2

3: $ service apache restart В этом примере я использую Ubuntu 11.10.1.125 "


1

FQDN означает разрешенное имя через DNS. Это должно быть похоже на «имя-сервера.поиск-домен».

Предупреждение, которое вы получаете, просто указывает на то, что httpd не может найти полное доменное имя, поэтому он может работать неправильно для обработки виртуального хоста на основе имени. Поэтому убедитесь, что ожидаемое полное доменное имя зарегистрировано на вашем DNS-сервере, или вручную добавьте запись, в /etc/hostsкоторой до попадания в DNS.


0

Мне показалось, что это сделали две вещи:

  1. Поместите все псевдонимы для 127.0.0.1 в / etc / hosts в одну строку (например, 127.0.0.1 localhost mysite.local myothersite.local
  2. Установите ServerNameв моем httpd.conf значение 0.0.0.0(localhost или 127.0.0.1 у меня не работали)

Редактирование / etc / hosts избавило меня от длительного времени отклика, а установка ServerName избавила меня от предупреждения OP.


0

кто все еще не может решить проблему и использовать Mac, следуйте этому

1. перейти в корневую папку /

  1. компакт-диск usr / локальный / и т.д. / apache2 / 2.4

3. sudo nano httpd.conf

4. измените #servername на ServerName 127.0.0.1:8080 нажмите ctrl + o, + return + ctrl x

5. затем перезапустите сервер apachectl restart


0

Если вы используете окна, возникает другая ситуация

Первый открытый c:/apache24/conf/httpd.conf. Папки Apache достаточно не конкретно над путем

После этого вам необходимо настроить файл httpd.conf.

Сразу после нескольких строк появляется шаблон вроде:

#Listen _____________:80
Listen 80

Здесь вам нужно сменить файл localhost.

Вы должны ввести адрес ipv4, чтобы вы могли открыть localhost.

Обратитесь к этой ссылке на видео, а затем еще раз.

Измените переменные среды:

Изображение для переменных среды USER в настройках системы

В котором вам нужно ввести путь:

c:apache24/bin

и то
же самое в переменных SYSTEM

Изображение для пути к системным переменным

Если есть какие-либо вопросы, не стесняйтесь спрашивать.


0

Если вы используете окна, удалите комментарии к этим строкам и установите их как:

Line 227 : ServerName 127.0.0.1:80 
Line 235 : AllowOverride all 
Line 236 : Require all granted

Сработало у меня!


0

Вот мои два цента. Может быть, это пригодится будущим читателям.

Я столкнулся с этой проблемой при использовании Apache в контейнере Docker. Когда я запустил контейнер из образа веб-сервера Apache, это сообщение появилось, когда я запустил его сdocker run -it -p 80:80 my-apache-container .

Однако после запуска контейнера в автономном режиме с помощью docker run -d -p 80:80 my-apache-containerя смог подключиться через браузер.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.