2011-10-26 64 views
0

Google爲我替換的網站建立索引。我想轉發現有的網址結構,但我有兩個問題。301重定向Mod-Rewrite(目錄到單個文件)

1)我正在嘗試將http://www.abc.com/testimonials/重定向到http://www.abc.com/testimonials.html,它不起作用。這是發生了什麼。

a)隨着WWW,沒有任何反應。 b)無WWW,它重定向到到testimonials.html /但結尾​​的斜線

這裏是代碼我在htaccess文件

rewriteengine on 
rewritecond %{HTTP_HOST} ^www.abc.com$ [OR] 
rewritecond %{HTTP_HOST} ^abc.com$ 
rewriterule ^testimonials$ "http\:\/\/abc\.com\/testimonials\.html" [R=301,L] 

任何意見,得到這個工作將不勝感激。

回答

0

試試這個代碼:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www\.abc\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^abc\.com$ 
RewriteRule ^/testimonials/$ http://abc.com/testimonials.html [R=301,L] 

如果你不想刪除站點名稱「WWW」,試試這個代碼:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www\.abc\.com$ [OR] 
RewriteCond %{HTTP_HOST} ^abc\.com$ 
RewriteRule ^/testimonials/$ /testimonials.html [R=301,L] 

有很好的例子如何使用mod_rewrite : http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritecond

+0

還是會去testimonials.html /其實。我只有其他代碼是這樣的: 'code'RewriteCond%{THE_REQUEST}^[AZ] {3,9} \ /(.*)index \。(html?| php | asp | cfm)\ HTTP/ RewriteRule ^(。*)index \。(html?| php | asp | cfm)$ http://www.abc.com/$1 [R = 301,L] 和 RewriteCond%{HTTP_HOST}^abc \ .com $ [NC] RewriteRule ^(。*)$ http://www.abc.com/$1 [L,R = 301]'code' –

+0

他們在做什麼?他們是否將請求重定向到abc.com文件夾(不是網站)?如果你想重定向到網站,你應該在站點名稱前加上「http://」。即使在這種情況下,你的最後一個RewriteRule也會一直重定向到同一個地方。我改變了一些代碼,不要忘記重新啓動apache。 –