繁体   English   中英

url如何使用htaccess在有或没有尾部斜杠的情况下工作

[英]How url works with or without trailing slash using htaccess

我的PHP网站中有htaccess。 我想使用或不使用斜杠来处理网址。

下面的代码仅适用于斜杠。

Options +FollowSymlinks
RewriteEngine on
RewriteBase /

RewriteRule ^(.*)/$ $1.php [NC,L]

例如www.mydomain.com/index/ --Works
www.mydomain.com/index-不起作用

如果有人知道我怎么能不加斜杠呢?

谢谢

您有以下规则:

RewriteRule ^(.*)/$ $1.php [NC,L]

如果要匹配它,无论最终使用/是:

ErrorDocument 404 /not-found.php

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/$1.php -f
RewriteRule ^(.+?)/?$ /$1.php [L]

RewriteCond %{REQUEST_FILENAME} !-f将停止重新应用同一规则,因为$1.php将是真实/有效文件。

放一个? / ,使其成为可选。

解决方法是

RewriteRule ^(.*)/?$ $1.php [NC,L]

这就是我对类似东西所做的

RewriteRule ^(.*)/?$ /$1.php [NC,L]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM