Я получаю 500 внутренних ошибок сервера, когда я пытаюсь изменить пример 1 на пример 2 с помощью mod_rewrite. Может кто-нибудь помочь мне решить эту проблему?
Пример 1
http://www.example.com/posts/1/abcd
Пример 2
http://www.example.com/posts.php?aid=$1
Вот мой мод переписать.
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine on RewriteBase / RewriteCond %{HTTP_HOST} ^example\.com$ [NC] RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L] RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/ RewriteRule ^index\.php$ http://www.example.com/ [R=301,L] RewriteRule ^(-[1-9]+)? $ http://www.example.com/posts.php?aid=$1 [L] </IfModule>
Попробуйте изменить свой последний RewriteRule на что-то вроде этого:
RewriteRule ^([A-Za-z0-9-]+)/?$ http://www.example.com/posts.php?aid=$1 [L]