当我在mod_rewrite正则表达式中包含百分号(%)时,我的服务器不断抛出404错误。我到处都搜索无济于事。我正在运行apache 2.4.4并尝试了下面显示的B标志。
RewriteRule ^pages/([a-zA-Z]+)/([a-zA-Z+%'"]+)$ pages/$1.php?search=$2 [B]
因此,当我访问页面/动物/猫%20和%20狗时,它会失败。但是当我将([a-zA-Z+%'"]+)
更改为(.*)
正则表达水平=幼儿,所以非常感谢任何帮助。
答案 0 :(得分:2)
%20
(空格)匹配 \s
。所以将你的规则改为:
RewriteRule ^pages/([a-zA-Z]+)/([a-zA-Z+\W'"]+)$ pages/$1.php?search=$2 [B,L]