Команда для перевірки дійсності файлів конфігурації сервера Apache


151

Я шукаю команду, яка перевіряє дійсність конфігураційних файлів на сервері apache як на дистрибутивах Debian, так і на RHEL. Мені потрібно це зробити перед перезавантаженням, щоб не було простоїв.

Відповіді:


222

Перевірте: http://httpd.apache.org/docs/2.2/programs/apachectl.html

apachectl configtest

Я отримую це повідомлення за допомогою вищевказаної команди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
Ciasto piekarz

Додайте рядок "ServerName whateveryoulike" у свій конфігурацію apache. Замініть whateveryoulike тим, що коли-небудь хочете назвати ваш сервер.
Піт

1
може знадобитися судо?
Мігель

36

Інший спосіб httpd -t. Тому він доступний у Windows-версії Apache. Перевірте http://httpd.apache.org/docs/2.4/programs/httpd.html


Як не дивно, на Ubuntu, коли я запускаю, apachectl configtestя отримую Syntax OK, але коли я запускаю, apache2 -tя отримую AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf(серед інших помилок)
Buttle Butkus

6

apachectl configtestє правильною відповіддю. На жаль, у мене встановлена ​​установка Windows, де апахектль відсутній. Тут httpdтакож допомагає дзвінок .


0

Тест конфігурації Apache ( apachectl configtestабо його еквіваленти) тестує лише конфігураційний файл (і файли, які він рекурсивно включає) для дійсного синтаксису. Однак в оригінальному запитанні було задано запобігання простоїв. Навіть коли apachectl configtestпомилка не повертається, фактичний перезапуск може все-таки закінчитися невдачею, що спричинить простої.

Загальні причини таких збоїв включають відсутні або недоступні сертифікати SSL, відсутні каталоги для файлів журналів або відсутніх кореневих директорій веб-сайту. Часто такі помилки викликаються видаленням каталогу vhost без видалення конфігураційного файлу vhost Apache. Настійно рекомендується використовувати такий інструмент, як маріонетка або ансіб, щоб запобігти подібним невідповідностям.

Побачивши, що це питання є хітом номер один, коли гуглінг "apache config lint", я подумав, що я згадаю цю маленьку деталь ...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.