URL переписать с поворотом - PullRequest
2 голосов
/ 05 января 2012

У меня проблемы с переписыванием определенного URL.

Я перемещаю какой-то сайт, и в индексе Google все еще есть старые URL-адреса, которые он сканирует, и которые я хотел бы перенаправить на новую страницу. Я думал, прежде чем я сделаю полосу строки запроса на строки запроса и перенаправления, мне было интересно, если вы можете сделать это в mod_rewrite сначала? В настоящее время у меня есть это в моем .htaccess, но это не работает.

RewriteRule ^news.php?action=view&title=(.*) /blog.php?article_keyword=$1 [L]

Среда Linux с Apache

Ответы [ 2 ]

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

Используйте этот код в вашем .htaccess:

Options +FollowSymLinks -MultiViews
RewriteEngine on

RewriteCond %{QUERY_STRING} ^action=view&title=(.*)$ [NC]
RewriteRule ^news\.php/?$ /blog.php?article_keyword=%1 [L,R=301,NC]
0 голосов
/ 05 января 2012

Вы не можете сделать это таким образом - RewriteRule не работает со строкой запроса напрямую - только с помощью RewriteCond:

RewriteCond %{QUERY_STRING} ^action=view&title=(.*)
RewriteRule ^news.php$ /blog.php?article_keyword=%1 [R=301,L]

Я добавил флаг R=301 для выдачипостоянное перенаправление, поэтому Google будет знать, что старый URL больше не используется, и вместо этого ему следует использовать новый URL.Если вам не нужен такой редирект, удалите его и оставьте только флаг L.

...