[英]Simple Rewrite rule with optional slash
我只需在htaccess中添加一个重写规则即可:
http:// mysite / toto- > http://mysite/page.php?c = toto
对以下结果相同:
http:// mysite / toto / -> http://mysite/page.php?c = toto
我的htaccess文件:
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^(.*)/?$ page.php?c=$1 [L]
它与URL“ http:// mysite / toto ”一起使用
但没有网址“ http:// mysite / toto / ”->结果: http://mysite/page.php?c = toto /
如何解决呢?
好的,因此您遇到了“贪婪”匹配,。*匹配所有内容。 您可以做的就是用此方法获得不是/
每个字符:
^([^ /] )。
这说:
^
[^/]
the parens do that
这将做您想要的。 请注意,如果必须转义/
字符,则需要使用/。 我认为您不需要使用htaccess文件。
好的谢谢! 我尝试了一下,看起来很有效!
RewriteBase /
RewriteRule ^(.*[^/])/?$ page.php?c=$1 [QSA,L]
url = http:// localhost / toto / -> result = http://localhost/page.php?c = toto
url = http:// localhost / toto- >结果= http://localhost/page.php?c = toto
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.