RewriteRule - как перенаправить с неправильного адреса - PullRequest
0 голосов
/ 06 января 2012

Мне нужно перенаправить такую ​​ссылку:

www.website.com / index.phpsite = transport (неправильная ссылка, которая была добавлена ​​во многие каталоги страниц и т. Д., И очень важно перенаправить эту ссылку на нужную)

к этому (очевидно): www.website.com/index.php?site=transport

Все о пропавшем "?" в адрес. Поэтому я хотел использовать .htaccess и RewriteRule, но не знаю, как.

Вы можете мне помочь? Как написать правило, которое заменит неправильную ссылку на рабочую?

Спасибо заранее, Konrad.

Ответы [ 3 ]

3 голосов
/ 06 января 2012

Следующее должно работать для вас (хотя, к сожалению, у меня нет времени полностью протестировать код):

RewriteRule ^index\.phpsite=(.*)$ /index.php?site=$1 [R=301,L,NC]

В конце я использовал подстановочный знак .*, так как я не был уверен, что у вас может быть больше параметров URL в некоторых URL, которые нужно перенаправить.

Все это поведение описано на связанных страницах руководства mod_rewrite .

1 голос
/ 06 января 2012

Если вы используете сервер Apache, запишите правило перенаправления в файл htaccess.

RewriteRule URL1 URL2 [R = 301, L, NC]

0 голосов
/ 06 января 2012

Так как это сработало, это мой ответ:

RewriteRule ^index.phpsite=transport$ /index.php?site=transport [L]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...