请协助我停止从删除子目录中的". php"扩展名,例如:https://www.example.com/enquire/contactmail
而不是:https://www.example.com/enquire/contactmail.php
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
\#####exclude /cp folder####
RewriteCond %{REQUEST_URI} !^/enquire
RewriteCond %{REQUEST_FILENAME}\\.php -f
RewriteRule ^(.\*)$ $1.php
RewriteCond %{THE_REQUEST} ^\[A-Z\]{3,9}\\ /((?!cp)\[^.\]+)\\.php
RewriteRule ^/?(.\*)\\.php$ /$1 \[NC,L,QSA,R=301\]
RewriteRule ^enquire/(.\*)$ contactmail.php?s=$1 \[NC,L,QSA\]
RewriteRule ^enquire/(\[0-9\]+)$ contactmail.php?a=$1 \[NC,L,QSA\]
2条答案
按热度按时间jfewjypa1#
据我所知,您有一个工作解决方案,以重写传入的请求没有“.php”扩展名的内部资源与“文件名扩展名”。
现在,您要问如何从中添加一个例外,以便内部重写 * 不会 * 应用于请求,这些请求的目标是所请求路径中特定文件夹(物理或虚拟文件夹)内的资源。
如果这是正确的,那么你确实应该为那些请求实现一个异常。异常应该在更一般的规则 * 之前 * 实现。所以在配置文件中更进一步,因为它是从上到下处理的。
这大概就是您要寻找的内容:
3hvapo4f2#
只需使用blow .htaccess删除.php扩展名