我有以下重写规则:
RewriteRule ^([a-zA-Z0-9]*)/([a-zA-Z0-9]*)\\.php\?(.*) /$2.php?shop=$1&$3 [NC,L]
RewriteRule ^([a-zA-Z0-9]*)/([a-zA-Z0-9]*)\\.php /$2.php?shop=$1 [NC,L]
RewriteRule ^([a-zA-Z0-9]*)/$ /index.php?shop=$1 [L,NC]
RewriteRule ^([a-zA-Z0-9]*)$ /index.php?shop=$1 [L,NC]
其结果应重定向以下内容:
www.site.com/Sells
-> /index.php?shop=Sells [works]
www.site.com/Sells/menu.php?Cat=1
-> /menu.php?shop=Sells&Cat=1 [failing]
-> /menu.php?shop=Sells [which is 'wrong']
最后一个示例应该通过 rewrite [1] 匹配...
我已经用 ape 附带的正则表达式测试器测试了规则,发现转义?
并且.
似乎不起作用。我有点摸不着头脑,如果有人能阐明为什么这种转义不起作用,我将不胜感激。
提前致谢。