2011-08-11 210 views
0

我想在我的網站上有一個很好的網址,所以我已經添加了這行到.htaccess中,但它造成了無限循環。mod_rewrite - 如何避免無限循環

RewriteRule ^(.*)$ http://www.mydomain.com/pages/$1%{QUERY_STRING}.php 

應該重寫每個URL,並添加「頁/」和「.php」結尾,但只有第一次不喜歡某種遞歸函數。

+0

你從任意文件重寫到任何新的文件,這恰好是不得以任何文件。 – Cyclone

+0

我找到了一個解決方案 - 添加RewriteCond%{SCRIPT_FILENAME}!-f – Radovan

+0

它適用於大多數頁面,但在主頁和其他一些隨機頁面上,它會得到500個內部錯誤。是更好的解決方案嗎? – Radovan

回答

1

你不需要傳遞查詢字符串,這是自動發生的。
see the documentation

比其他

,試試這個

RewriteCond %{REQUEST_URI} !^/pages/$ 
RewriteRule ^(/.*)? http://www.mydomain.com/pages/$1 [L]