Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 用电子邮件地址重写规则_Regex_.htaccess_Mod Rewrite - Fatal编程技术网

Regex 用电子邮件地址重写规则

Regex 用电子邮件地址重写规则,regex,.htaccess,mod-rewrite,Regex,.htaccess,Mod Rewrite,我正在尝试做一个重写规则,可以包括一个电子邮件地址。我想我的正则表达式有问题 RewriteRule^user/verify/([a-zA-Z0-9.-.@]+)/([a-zA-Z0-9]+)/?$user.php?电子邮件=$1,令牌=$2[L] 有人有什么想法吗 寻找这个: http://www.example.com/user/user@email.com/sdfdsfa7dfs6dsfa6dsf8/我想到的一个明显原因是您正在寻找 www.example.com/用户/user@emai

我正在尝试做一个重写规则,可以包括一个电子邮件地址。我想我的正则表达式有问题

RewriteRule^user/verify/([a-zA-Z0-9.-.@]+)/([a-zA-Z0-9]+)/?$user.php?电子邮件=$1,令牌=$2[L]

有人有什么想法吗

寻找这个:


http://www.example.com/user/user@email.com/sdfdsfa7dfs6dsfa6dsf8/

我想到的一个明显原因是您正在寻找

www.example.com/用户/user@email.com/sdfdsfa7dfs6dsfa6dsf8/

但是你的正则表达式说

^用户/验证/([a-zA-Z0-9.-.@]+)/([a-zA-Z0-9]+)/$

但也许这只是你问题中的一个错误



至于电子邮件地址,已经有很多关于这个主题的讨论:。可能存在与您的正则表达式不匹配的电子邮件地址,例如,其中包含
+
(加号)。

使用如下规则:

RewriteRule ^user/verify/([^/]*)/(.*)/?$ user.php?email=$1&token=$2 [L,NC]

这将捕获
user/verify/
sdfdsfa7dfs6dsfa6dsf8/
之间的所有内容作为电子邮件地址。

@atlcris,那么
/verify
呢?