Mod Rewrite - 正则表达式包含除斜杠之外的所有内容

时间:2013-01-12 04:10:12

标签: php mod-rewrite

在我的.htaccess中,我有一个重写规则,它从一个干净的网址中读取$_GET个值。对于url中的一个部分,我允许所有字符(.*)成为var的一部分。唯一的问题是当我通过Twitter关注我的网站链接时,它在网址中包含最后的“/”。

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/ trys包括'/'作为content_att var的一部分。表达式只是排除斜杠? (或任何其他mod_rewrite约定来实现此目的)

1 个答案:

答案 0 :(得分:7)

[^/]将包含除/之外的任何字符 [^/]*将包含任意数量的非/

字符

在行动中应如下所示:

RewriteRule ^advertise/([A-Za-z0-9]+)/([^/]+)/?$ advertise/?a=b&content=$1&content_att=$2 [L]