![](/img/trans.png)
[英].htaccess trouble with hiding file extension and forcing trailing slash
[英].htaccess - hidding .php and forcing trailing slash not working
我試圖在我的網站中隱藏.php
擴展名,同時強制使用斜杠,但我一直在搜索最近幾天,但均未成功。
該站點當前正在XAMPP服務器中運行。
這是.htaccess
文件:
Options -Indexes -Multiviews +FollowSymlinks
RewriteEngine On
RewriteBase /
#removing .php extension
RewriteCond %{THE_REQUEST} ^GET\ /[^?\s]+\.php
RewriteRule (.*)\.php$ /$1/ [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/(.+)/$
RewriteCond %{DOCUMENT_ROOT}/%1.php -f
RewriteRule ^(.*)/$ $1.php [L]
#forcing trailing slash
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .*[^/]$ $0/ [L,R=301]
ErrorDocument 404 http://localhost/404/
這些鏈接有效:
localhost/about-us
重定向到localhost/about-us/
是正確的,但是當我嘗試訪問localhost/about-us.php
,它將重定向到localhost/about-us/
而不是localhost/about-us/
。 (抱歉無法發布鏈接)
如何解決?
您似乎只是不小心使用了絕對路徑。 只需像其他規則一樣刪除/$1/
開頭的斜杠即可使其正常工作。
#removing .php extension
RewriteCond %{THE_REQUEST} ^GET\ /[^?\s]+\.php
RewriteRule (.*)\.php$ $1/ [L,R=301]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.