Regex Apache URL重写(mod_重写)和uuid
我想在apache中重写以下URL:Regex Apache URL重写(mod_重写)和uuid,regex,apache,mod-rewrite,uuid,Regex,Apache,Mod Rewrite,Uuid,我想在apache中重写以下URL: abc.php?id=1234&token=xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx 其中,xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxx是V4 UUID 我曾尝试制定如下重写规则: RewriteRule ^/ABC/([0-9]+)$/^([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA
abc.php?id=1234&token=xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx
其中,xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxx
是V4 UUID
我曾尝试制定如下重写规则:
RewriteRule ^/ABC/([0-9]+)$/^([0-9a-fA-F]){8}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){4}-([0-9a-fA-F]){12}.([0-1]){1}/ /abc.php?id=$1&token=$2
但它似乎并没有真正起作用
我想我不需要一个完全代表V4 UUID的正则表达式,但只需要一个简单的正则表达式来代表UUID字符串中的字符和连字符,有人对apache正则表达式有好的想法吗?这就是您想要的:
RewriteRule ^/ABC/([0-9]+)/([a-zA-Z0-9\-]+)$ abc.php?id=$1&token=$2
如果您想进一步验证令牌,最好在PHP中进行验证,因为这是它的预期用途。这就是您想要的:
RewriteRule ^/ABC/([0-9]+)/([a-zA-Z0-9\-]+)$ abc.php?id=$1&token=$2
如果您想进一步验证令牌,最好在PHP中进行验证,因为这是它的预期用途。我觉得使用rewriterule-36字符uuid等可以更好地完成此操作。
[A-z0-9\-]{36}
我觉得使用rewriterule-36字符uuid等[A-z0-9\-]{36}可以更好地完成此操作。