Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.
Apache Error: AH00558: Could not reliably determine the server's fully qualified domain name Linux / DevOps

Apache Error AH00558: Could not reliably determine server's FQDN — Фикс

Обновлено: 18.08.2026  ·  Официальная база знаний

При любой проверке синтаксиса (apache2ctl configtest) или перезапуске службы Apache в терминал выводится предупреждение: 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.

ПараметрТекущее состояниеТребуемое значение
Глобальный ServerNameНе задан в apache2.conf / httpd.confДолжен содержать FQDN домен или 127.0.0.1
Статус выполненияСинтаксис Syntax OK с предупреждениемЧистый вывод без сторонних предупреждений
Генерация URL редиректовМожет использовать неверный IP 127.0.1.1Использование корректного публичного домена
  • Предупреждение появляется при каждом выполнении скриптов деплоя или автообновлении сертификатов Certbot.
  • Apache не может автоматически сформировать FQDN (Fully Qualified Domain Name) сервера.
  1. Решение для Ubuntu / Debian:
    Создайте отдельный глобальный конфигурационный файл для директивы ServerName:
    echo "ServerName 127.0.0.1" | sudo tee /etc/apache2/conf-available/servername.conf
    sudo a2enconf servername
  2. Решение для CentOS / RHEL / AlmaLinux:
    Откройте /etc/httpd/conf/httpd.conf, найдите строку #ServerName www.example.com:80 и укажите ваше имя или IP:
    ServerName 127.0.0.1:80
  3. Если у сервера есть постоянное доменное имя, укажите его вместо IP:
    ServerName server1.yourdomain.com
  4. Проверьте синтаксис конфигурации:
    sudo apache2ctl configtest # или sudo httpd -t
    Вывод должен содержать строго Syntax OK без предупреждения AH00558.
  5. Примените изменения: sudo systemctl reload apache2 # или sudo systemctl reload httpd.
Влияние на работу сайтов: Директива ServerName на глобальном уровне используется Apache для создания канонических редиректов при включенной опции UseCanonicalName On. Если глобальный ServerName не задан, автоматические 301 редиректы (например, добавление слэша к папке /blog -> /blog/) могут перенаправлять клиентов на внутренний адрес http://127.0.1.1/blog/.
Практический опыт инженера: При настройке SSL-серверов всегда указывайте `ServerName` глобально, иначе некоторые сборки `mod_ssl` могут некорректно инициализировать SNI-дефолты для первого виртуального хоста.

Частые вопросы (FAQ)

Критична ли ошибка AH00558 для работы сайта?

Нет, это не фатальная ошибка, а предупреждение (notice). Сервер продолжит работать, но предупреждение будет засорять логи и мешать автоматизированным скриптам проверки синтаксиса.

В чем разница между ServerName внутри VirtualHost и в глобальном конфиге?

Внутри VirtualHost директива ServerName определяет, на какие доменные имена должен откликаться конкретный сайт. В глобальном контексте она задает сетевую идентичность всего процесса Apache.

Что такое FQDN?

FQDN (Fully Qualified Domain Name) — это полное доменное имя узла, однозначно определяющее его положение в дереве DNS (например, web01.company.com), включая имя хоста и доменную зону.

Почему Apache выбирает адрес 127.0.1.1 в Debian?

В дистрибутивах Debian инсталлятор по умолчанию связывает системное имя хоста с IP адресом 127.0.1.1 в файле /etc/hosts для корректной работы утилит без постоянного IP.