2016-02-26 208 views
0

我想perfom 301重定向這樣的:重定向301不能正常工作

<ifmodule mod_rewrite.c> 

RewriteEngine On 

##This is the redirect 
RewriteRule /page/old-url http://website.com/page/new-url [R=301,L] 

RewriteCond %{REQUEST_FILENAME} !-f 

RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^(.*)$ index.php?route=$1 [L,QSA] 

</ifmodule> 

但我得到這樣一個網址:

http://website.com/page/new-url?route=page/old-url 

我試過例如許多變化:

RedirectMatch 301 /page/old-url http://website.com/page/new-url 

,但仍無法修復它

在此先感謝!

回答

0

有這樣的:

RewriteEngine On 

##This is the redirect 
RewriteRule ^page/old-url/?$ /page/new-url/ [R=301,L,NC] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d  
RewriteRule ^(.*)$ index.php?route=$1 [L,QSA] 

確保測試這種變化之前,清除瀏覽器緩存。

+0

我試了一下,但現在我得到這個URL:http://website.com/page/old-url,它不會更改爲新的 – Luis

+0

該規則對我的Apache有效。確保這是在網站根目錄下,並且在此之前沒有其他規則 – anubhava