2014-07-03 41 views
0

在我的PHP應用程序中,我已應用以下規則在htaccess中將非www重定向到www。非www到www重定向規則停止發佈表單數據作爲POST

RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule ^(.*)$ http://www.mydomain.com/$1 [L,R=301] 

但是應用這條規則後,我陷入了麻煩。 系統停止發送POST數據。在此規則之後,登錄,註冊等所有形式都停止工作。

即使我試圖加載登錄頁面http://www.mydomain.com/login.html仍然無法正常工作。

我該如何擺脫這種情況?

謝謝。

+0

閱讀[this](http://stackoverflow.com/questions/10586779/redirectmatch-changes-post-to-get)後 –

回答

1

您需要擁有指向www域的所有內容。如果在形式上,你有作爲行動參數集http://mydomain.com它簡單不會工作。您需要將其更改爲http://www.mydomain.com

+0

哦,它爲我工作。因此,這意味着如果我在表單操作參數中使用非www url,並且將非www的應用規則應用於www,則它將非www重定向到wwww並刷新所有POST數據。 – Nayan

+0

簡單重定向POST數據不會傳輸到新站點。事實上,我幾乎從不使用完整的路徑,因此只有'action ='test.php''才能使用,並且您不必擔心域名是否使用了www或不使用www –