因此,我试图通过mod_rewrite规则传递PHP urlencode()变量,但是我似乎无法使其正常运行.
目前,我正在通过这种事情:
/test/abc%40test.co.uk
@符号用urlencode中的& 40代替.
通过此规则:
RewriteRule ^test/([-_.%A-Za-z0-9]+)/?$test.php?variable=$1
据我所知,这应该允许%符号通过;为什么不起作用?我是否缺少明显的东西?
解决方法:
该URL在通过重写引擎发送之前已解码,因此您需要与@而不是编码字符串进行匹配.尝试:
RewriteRule ^test/([-_.@A-Za-z0-9]+)/?$test.php?variable=$1