У меня проблема, когда я пытаюсь перенаправить и переписать вместе. У меня есть сайт example.com/show_table.php?table=12 (не более 99 таблиц). Я хотел хорошие ссылки, так что я получил этот .htacces правило Rw:mod_rewrite и перенаправление вызывающей петли
RewriteRule ^table/([0-9]{1,2})$ show_table.php?table=$1 [L,NC]
Теперь ссылки что-то вроде example.com/table/12 - это, безусловно, OK. Но я хочу, чтобы все старые ссылки перенаправлялись в новый формат. Поэтому я использую Перенаправление 301, я добавил в .htaccess следующий код:
RewriteCond %{REQUEST_URI} show_table.php RewriteCond %{QUERY_STRING} ^table=([0-9]{1,2})$ RewriteRule ^show_table\.php$ http://example.com/table/%1? [L,R=301,NC]
Но когда я посещаю example.com/show_table.php?table=12, я получаю только REDIR петлю. Я не понимаю: первое - переписывание, второе - перенаправление, нет двух перенаправлений. Вы видите какую-либо ошибку?
Спасибо!
Вам нужно бежать '\' в THE_REQUEST RewriteCond регулярок – Croises
@Croises хорошо пятнистый, спасибо?. –
Работает отлично. СПАСИБО! –