我使用下面的代碼在我的.htaccess:爲什麼這個重寫規則不起作用?
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) $1\.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ /$1 [R=301,L]
# Special rewrite rules
# ideas/<id>
RewriteRule ^ideas/([0-9]+)$ idea\?id=$1
# users/<name>
RewriteRule ^users/(.+)$ users\?name=$1
的想法/規則正常工作,因爲我希望它,但用戶/規則似乎沒有。它給了我一個HTTP 500錯誤,並且Apache日誌說它超出了可用重定向的數量:
[Sun Jun 14 10:58:39 2009] [error] [client 127.0.0.1]請求超出限制10個內部重定向由於可能的配置錯誤。如果需要,使用'LimitInternalRecursion'來增加限制。使用'LogLevel調試'來獲得回溯。引用:http://localhost/users
我測試它的網址是/ users/ross,它應該可以正常工作。/ideas/1絕對沒問題。
這將導致思想/頁停止與相同的錯誤工作。 –
Ross
2009-06-14 10:22:23
服務器日誌對此有何評論? 500錯誤可能意味着任何事情。 – Gumbo 2009-06-14 10:56:38
更新了問題。 – Ross 2009-06-14 12:05:07