Не могу перезапустить Apache 2

Я пытаюсь перезапустить свой Apache, но он не работает. Это ошибка:

Restarting web server apache2 
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

Мне нужна помощь. Спасибо

1
задан 6 August 2013 в 20:19

3 ответа

Прежде всего, я считаю, что более новые версии Apache не используют httpd.conf или что-либо подобное, поэтому я не собираюсь обсуждать «httpd».

Я считаю, что правильный способ убрать это предупреждение - это НЕ ПРИКАСАТЬСЯ apache2.conf .

Я читал, что этот файл обновляется каждый раз, когда обновляется apache2, и если вы похожи на меня, вы не хотите, чтобы то, что вы уже сделали, было отменено. Поэтому используйте файл .conf в /etc/apache2/available-sites/

У моей установки был файл по умолчанию ... как 000-default.conf. Если это не так, вам, вероятно, следует зайти в Google a2enconf и узнать о создании файлов .conf и использовании a2enconf для создания символических ссылок.

Первым делом я раскомментировал имя_сервера и установил для него значение localhost, ожидая, что предупреждение исчезнет. Увы, предупреждение все еще было там.

1110 В моем предупреждении было слово «глобальный». Поэтому я понял, что строка, которую я изменил, была внутри тега <VirtualHost>, и предположил, что это не глобально. Я добавил «ServerName localhost» снаружи тега vhost, но все еще в файле 000-default.conf и вуаля. Задача решена. И мне не нужно было трогать apache2.conf, поэтому мне больше никогда не придется с этим сталкиваться, даже когда я обновляюсь и Apache перезаписывает apache2.conf. Я надеюсь, что это проясняет некоторые вещи о предупреждении. Я ненавижу предупреждения так же, как ошибки. Мне нравится, чтобы все функционировало идеально, но также и спокойно.

0
ответ дан 6 August 2013 в 20:19

Чтобы решить эту проблему, вам нужно отредактировать файл httpd.conf. Просто нажмите Ctrl + Alt + T на клавиатуре, чтобы открыть терминал. Когда он откроется, выполните команду (ы) ниже:

sudo gedit /etc/apache2/httpd.conf

По умолчанию файл httpd.conf пуст, просто добавьте следующее:

ServerName localhost

Как только вы закончите, сохраните файл и перезапустите сервер.

sudo /etc/init.d/apache2 restart

ИЛИ

Для решения этой проблемы просто установите ServerName.

sudo nano /etc/apache2/conf.d/name

Например, установите имя как localhost или любое другое имя, которое вы хотите:

ServerName localhost

Просто перезапустите Apache 2

sudo /etc/init.d/apache2 restart
0
ответ дан 6 August 2013 в 20:19

Имя хоста называется полностью определенным , когда к нему добавляется доменное имя.

имя_сервера не полностью определено, servername.domainname.org равно.
Когда команда hostname используется для возврата имени хоста системы, hostname -f используется для возврата полного имени хоста.

Если вы запускаете эту команду в своей системе и она ничего не возвращает, то вы можете ожидать это предупреждение в Apache и в некоторых других программах.

В этом случае, если вы действительно хотите исправить проблему, вам нужно будет определить /etc/hosts соответственно:

<your ip> servername.domainname servername

Пример, если мой IP 10.1.1.1 , мой домен example.com и мое имя хоста host1 , минимальный файл /etc/hosts будет:

127.0.0.1   localhost.localdomain localhost
10.1.1.1    host1.example.com host1

После этого команда hostname будет return host1 и hostname -f возвращает host1.example.com .

Таким образом, нет необходимости сообщать вашему Apache, что ваше имя хоста - localhost. Нет необходимости изменять основной файл конфигурации Apache, поэтому в следующий раз, когда Apache будет обновлен, вы не потеряете свои настройки или новый файл конфигурации не будет объединен с существующим.

0
ответ дан 6 August 2013 в 20:19

Другие вопросы по тегам:

Похожие вопросы: