Редактирует ошибку сервера 500

RewriteEngine on
RewriteRule ^home index.php [NC,L]
RewriteRule ^news news.php [NC,L]

Буду признателен за любую помощь, как решить эту проблему. Я создал .htaccess файл для моего сайта, чтобы упростить его URL. Весь.htaccess выглядит следующим образом (и работает как нужно):

RewriteEngine on

Единственная проблема, с которой я сталкиваюсь сейчас, заключается в том, что нажатие на нее генерирует страницу "Ошибка сервера 500" вместо окна общего доступа на Facebook.

Что я могу сделать, чтобы исправить эту проблему

1 ответ

Вы должны использовать конечный якорь в ваших паттернах и повернуть MultiViews от:

Options -MultiViews
RewriteEngine on

RewriteRule ^home/?$ index.php [NC,L]
RewriteRule ^news/?$ news.php [NC,L]
RewriteRule ^news/([0-9a-z]+)/?$ news.php?id=$1 [NC,L,QSA]

Без концевого якоря ^news шаблон также будет соответствовать news.php и вызвать бесконечный цикл и в конечном итоге 500 (внутренняя ошибка сервера).

Другие вопросы по тегам