我有困難構建一個非www到www永久重定向。以下是我需要滿足的條件...Apache重寫:*完全*非www到www永久重定向
1.)多域支持(多個網站域指向服務器上的同一目錄,其自己的專用數據庫副本)。這意味着使用%{HTTP_HOST}而不是一個靜態域名。
2.)全部可能的路徑(或至少符合標準的路徑)需要重定向;這意味着目錄,HTTP查詢等。
3.)我使用共享主機,因此我只能訪問.htaccess文件。
這裏是我的工作現在...
RewriteEngine on
RewriteCond %{HTTP_HOST} ^%{HTTP_HOST}
RewriteRule (.*) http://www\.%{HTTP_HOST}/$1 [R=301,L]
會很樂意做任何澄清,以及贊成票都接受一個工作的答案。
我正在測試瀏覽器緩存禁用,以防萬一。
我在測試過程中刪除了其他語法,以查看自己的答案是什麼。
什麼不適用於您的代碼段? – 2012-02-08 19:31:00
我不太瞭解HTTP/1.1,但是301代碼對每個請求都有效?我認爲RFC至少說,對於GET或HEAD以外的任何請求,客戶端應該提示用戶重定向。見[這裏](http://tools.ietf.org/html/rfc2616#section-10.3.2)。 – dreamlax 2012-02-08 19:32:11
http://example.com/blog/不會重定向,但是http://example.com/不會。 – John 2012-02-08 19:32:39