Мой httpd.conf был испорчен на FreeBSD
uname -a
FreeBSD ares 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Thu Jan 1 14:37:25 UTC 2009 [email protected]:/usr/obj/usr/src/sys/GENERIC i386
Я использую apache-2.0.63_2. Я изменил /home/user/public_html/.htaccess и добавил правило Deny from, а затем перезапустил apache с помощью.
Есть идеи? Известен ли какой-нибудь баг? Я что-то сделал не так?
решение1
Apache читает свой файл конфигурации только один раз при запуске. Всякий раз, когда вы вносите изменения в httpd.conf
, вам нужно сообщить Apache, что вы изменили его файл конфигурации, и что он должен перезагрузить файл. Один из способов сделать это — перезапустить Apache.
Следствием вышесказанного является то, что Apache не реагирует ни на какие изменения в своем конфигурационном файле, пока вы не скажете ему об этом (например, перезапустив). Более вероятно, что ваш httpd.conf
был изменен («выброшен», как вы выразились) чем-то другим в какой-то момент в прошлом после последнего перезапуска Apache. В этой ситуации вы не увидите эффекта от изменения httpd.conf
до следующего перезапуска Apache.
решение2
Если под httpd.conf вы подразумеваете, что сайт не открывается и выдает ошибку 500, то это может быть проблема с синтаксисом .htaccess. Если вы допустили ошибки в файле .htaccess, то для всех страниц в этом каталоге или его подкаталогах вы получите ошибку 500 Internal Server Error.
Но под httpd.conf был повреждён вы имеете в виду, что Apache вообще не запускается, тогда это что-то другое. Вы можете попробовать скопировать свежий httpd.conf из другой похожей установки и попробовать запустить Apache. Если это сработает, добавьте несколько строк за раз из старого файла в новый, чтобы точно определить, какая именно строка вызывает проблему.