2012-01-05 104 views
2

我在重寫某個URL時遇到了問題。重寫網址

我正在做一些網站移動,Google的索引中仍舊有一些舊網址,它會抓取我希望重定向到新網頁的網址。我想在查詢字符串和重定向之前做一個查詢字符串條之前,我想知道如果你可以先在mod_rewrite中完成此操作?我目前在我的.htaccess中有這個,但它不起作用。

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

環境就是Linux和Apache

+1

你不能做這種方式 - 'RewriteRule'不直接查詢字符串的工作 - 只RewriteCond'的'幫助。 – LazyOne 2012-01-05 18:32:36

回答

0

使用此代碼在您的.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

感謝這工作就像一個魅力! – Kenny 2012-01-05 19:15:59

0

你不能做這種方式 - RewriteRule不直接查詢字符串的工作 - 只與RewriteCond幫助:

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

我我們添加了R=301標誌來發布永久性重定向,因此Google會知道舊網址不再被使用,而應該使用新的網址。如果你不需要這樣的重定向,那麼移動它,只留下L標誌。