3
我想在我的網站URL重寫使得URL重寫,除去.PHP導致循環
www.example.com/login點www.example.com/login.php
www.example.com/login/過點www.example.com/login.php
網站內部的頁面應遵循上述規則。即
www.example.com/inner/inner2/something 和www.example.com/inner/inner2/something/也應該指向
www.example.com/inner /inner2/inner3/something.php
www.example.com/login/anything,如果不存在應顯示404 (在我的情況下,它是造成環路)
我寫的規則是:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*[^/])$ $1.php [L]
RewriteRule ^(.+)/$ $1.php [L]
它工作正常,在上述情況下3但在第四它是造成循環。
另外我想顯示一個404,如果一個文件擴展名爲.php請求。
而且,如果我使用REQUEST_URI而不是REQUEST_FILENAME,則上述規則更改的行爲。兩者有什麼區別?
TIA
爲404處理,你可以使用:'的ErrorDocument 404/404.php'並顯示自定義頁面從'404.php' – anubhava
謝謝,但是如何請求帶有.php擴展名的頁面時顯示404。 – krisk
查看404處理的更新答案。 – anubhava