在我的.htaccess中,我有一个重写规则,它从一个干净的url读取$_GET
值。对于url中的一个部分,我允许所有字符(.*)
都成为var的一部分。唯一的问题是当我从twitter跟踪指向我的站点的链接时,它在url中包含了最后一个“/”。
RewriteRule ^advertise/([A-Za-z0-9]+)/(.*)/?$ advertise/?a=b&content=$1&content_att=$2 [L]
www.mysite.com/advertise/content/content_att
工作得很好-但是www.mysite.com/advertise/content/content_att/
尝试将“/”作为content_att
变量的一部分包含进来。表达式将是什么来仅排除斜杠?(或任何其他mod_重写约定以实现此目的) 最佳答案
[^/]
将包括除/
以外的任何字符[^/]*
将包含不/
的任意数量的字符
实际上应该是这样的:
RewriteRule ^advertise/([A-Za-z0-9]+)/([^/]+)/?$ advertise/?a=b&content=$1&content_att=$2 [L]