У меня возникли проблемы с mod_rewrite.mod_rewrite для чистых URL-адресов дает 500 внутренних ошибок сервера
На моей странице индекса (index.php) Я показать блог и один блог запись страницы выглядит следующим образом: http://www.mydomain.com/blog/post-title
mod_rewrite для этого:
RewriteRule ^blog/([A-Za-z0-9-]+)$ index.php?postslug=$1 [L]
Это работает как шарм ,
Но у меня есть другая страница называется artists.php и URL должен выглядеть следующим образом: http://www.mydomain.com/artists/artist-name
mod_rewrite для этого:
RewriteRule ^artists/([A-Za-z0-9-]+)$ artists.php?artistslug=$1 [L]
Это дает мне внутреннюю ошибку сервера 500 и I понятия не имеют, почему это происходит ...
Оба index.php и artists.php находятся в корневом каталоге моего сайта
файл .htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
RewriteRule ^blog/([a-z0-9\-]+)$ index.php?postslug=$1 [L]
RewriteRule ^artists/([a-z0-9\-]+)$ artists.php?artistslug=$1 [L]
Проверьте журналы Apache. Есть ли шанс, что artist.php вызывает его вместо mod_rewrite? –
проверил его, и я получаю это сообщение: mod_rewrite: максимальное количество внутренних переадресаций достигнуто. Предполагая ошибку конфигурации. Используйте «RewriteOptions MaxRedirects», чтобы увеличить предел, если это необходимо. – Bundy