我目前有一个如下所示的 URL:
www.mysite.com/folder-name/page-name.php
但我需要它看起来像这样:
www.mysite.com/folder-name/page-name/
我正在寻找“文件夹名称”中的 .htaccess 的正则表达式,并且只针对它所在的文件夹。它需要删除 .php 扩展名并重定向到末尾带有斜杠的 url。
此外,如果 url 是www.mysite.com/folder-name/
我需要忽略表达式以避免最后出现 //。我看过但找不到仅针对特定文件夹的解决方案。刚开始使用 PHP 和正则表达式让我大吃一惊!
我找到了这样的代码:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{THE_REQUEST} ^GET\ /[^?\s]+.php
RewriteRule (.*).php$ /$1/ [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)/$ $1.php [L]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .*[^/]$ $0/ [L,R=301]
但它会返回网址:
www.mysite.com/var/www/vhosts/mysite.com/httpdocs/folder_name/page_name/