При входе на мой сайт через главную страницу (example.com
) все нормально работает. Но при входе в example.com/forums
Я получаю внутреннюю ошибку 500 и вижу в error_log следующее:
Запрос превысил лимит в 10 внутренних перенаправлений из-за возможной ошибки конфигурации.
Кроме того, я знаю, что могу опубликовать вывод httpd -S
, но он очень длинный, нет блоков спойлера и форматирование уходит, извините.
Это мое .htaccess
:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(data|js|styles|install) - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
RewriteBase /var/www/html
</IfModule>
РЕДАКТИРОВАТЬ: Вам нужен виртуальный хост?
<IfModule mod_rewrite.c>
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
</IfModule>
Одна проблема здесь в том, что ваш RewriteRule
соответствует каждому запросу и перезаписывает его на index.php
. Итак, просьба к index.php
переписывается также на index.php
, до бесконечности. За исключением того, что Apache прекращает попытки после обнаружения десяти последовательных перенаправлений.
Вам нужно выяснить, что именно вы хотите переписать, а затем создать правило для того, что не возвращается к самому себе.