Я пытаюсь настроить сайт со статическим HTML с помощью Apache 2.2.22, но получаю ошибку 500 вместо 404.
Сообщение в журнале ошибок:
[Sun Dec 14 09:48:45 2014] [ошибка] Превышено ограничение в 10 внутренних перенаправлений для запроса из-за возможной ошибки конфигурации. При необходимости используйте LimitInternalRecursion, чтобы увеличить лимит. Используйте «Отладка LogLevel», чтобы получить обратную трассировку.
Когда я устанавливаю LogLevel для отладки, я вижу
[Sun Dec 14 09:48:45 2014] [debug] core.c(3112): r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /home/nxad/index.php
[Sun Dec 14 09:48:45 2014] [debug] core.c(3118): redirected from r->uri = /norealfile
[Sun Dec 14 09:48:45 2014] [debug] mod_deflate.c(700): Zlib: Compressed 538 to 325 : URL /home/nxad/index.php
На моем сайте нет PHP, а файл конфигурации Apache не использует mod_rewrite:
ServerName nxfifteen.me.uk
RewriteEngine off
ErrorDocument 404 "Missing File"
LogLevel debug
ErrorLog /home/nxad/logs/error_log
TransferLog /home/nxad/logs/access_log
DocumentRoot /home/nxad/public_html/
DirectoryIndex index.html
<Directory /home/nxad/public_html>
Options -Indexes +IncludesNOEXEC FollowSymLinks
AllowOverride None
allow from all
</Directory>
Я просмотрел каждый файл в папке конфигурации Apache, а также в папке public_html, и нет никаких ссылок на /home/nxad/index.php (или любые другие файлы под DocumentRoot) и файлов .htaccess.
После выполнения всех вышеперечисленных предложений я просмотрел все другие сайты, размещенные на том же сервере, и обнаружил, что проблема реплицируется на все сайты, размещенные в моем домашнем каталоге, но не на других.
После этого я побежал find ~/ -type f -name ".htaccess"
а не только в моем DocumentRoot (/ главная / nxad / public_html) и нашел файл .htaccess внутри домашнего каталога (/ главная / nxad) как только я удалил, проблема решилась сама собой.
С тех пор я нашел это Учебное пособие по HTTP-серверу Apache: файлы .htaccess что подтверждает, что Apache будет искать файлы .htaccess во всех каталогах более высокого уровня.