php - 在 mod_rewrite 中允许百分比 (%) 符号?

标签 php regex apache .htaccess mod-rewrite

所以我试图通过 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

关于php - 在 mod_rewrite 中允许百分比 (%) 符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26130493/

相关文章:

PHP 函数转义 MySQL 正则表达式语法

regex - 如何使用 sed 打印匹配模式

javascript - 检测某个单词是否刚刚输入到文本区域中

java - Apache poi Excel 设置从右到左的阅读顺序

apache - 您自己服务器上的动态 DNS

php preg_match 噩梦

php - 如何使用PHP和mysql提交后返回数据

php - wordpress 登录页面未获取 load-styles.php?

javascript - 第二次单击时取消选中单选按钮

php - XAMPP 中还包含什么?