2013-04-10 87 views
0

我有以下重寫規則,它將krmmalik.com引導到krmmalik.com/me 我如何確保此規則是301重定向,如果它不是一個,我怎麼能把它變成一個?確保我的重寫規則是301重定向

我已經使用混合並從該網站

http://www.webweaver.nu/html-tips/web-redirection.shtml

,以及谷歌的支持文章相匹配的提示和現有的SO問題,但沒有多少運氣嘗試。注意到重寫規則本身到目前爲止一直工作正常。

我也在我的DNS文件中將「www」的CNAME添加到「krmmalik.com」。這足夠好,還是我需要爲此添加特定的301重定向?

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(www.)?krmmalik.com$ 
RewriteRule ^(/)?$ me [L] 

回答

1

嘗試以下操作:

RewriteRule ^/?$ /me [L,R=permanent] 

R=permanent標誌指令301個狀態重定向(您可以使用R=301如果你喜歡,但我認爲,「永久」更具可讀性)。

/me目標URL的開頭處加上正斜槓將告訴Apache將用戶重定向到Web服務器公共根目錄下名爲「me」的目錄。所以在你的情況下,它應該將用戶重定向到krmmalik.com/me(或www.krmmalik.com/me)。

此外,您不需要將匹配模式包含在圓括號中,因爲您不需要捕獲斜線以供以後使用。所以^/?$將會很好的工作。

+0

好的,所以krmmalik.com重定向現在工作正常。謝謝。 但是,「www」重定向仍然失敗。我不太瞭解你的最後一條指令,因此可能是它失敗的原因。請注意,我有一個CNAME設置爲「www」,無論如何指向krmmalik.com。不知道這是如何影響這個或SEO。 有什麼想法嗎? – 2013-04-11 15:04:23

+0

要配置您的Apache主機強制用戶訪問www.krmmalik.com,請查看[此ServerFault問題](http://serverfault.com/questions/446/how-can-i-enforce-that-my-urls -always-start-with-www),它討論了所需的Apache配置。 – Bobulous 2013-04-11 16:27:10