我正在尝试以这样的方式编写一个模式,即这个链接:
http://www.mysite.com/link/go/[电子邮件保护]
解释如下:
http://www.mysite.com/[电子邮件保护]
但我不知道该怎么写。我试过了,但没有用。请帮忙。
这是我在 .htaccess 文件中写的但没有起作用:
选项 +关注符号链接 RewriteEngine 开启 重写规则 ^link/go/overview/([A-Za-z0-9-]+)$ /process.php?email=$1 [NC,L]
谢谢
答案1
RewriteRule link/go/(.*)$ process.php?email=$1
这似乎有效。为了便于阅读,您应该在 中进行电子邮件验证process.php
,而不是在规则中进行验证(另外,您至少可以在页面上显示一条不错的错误消息)。.htaccess
这是有效的,因为其后的任何内容link/go/
都会被匹配(.
匹配任何字符,所以.*
意味着尽可能多地匹配任何字符,并且(.*)
意味着将其保存到$1
-$
最后的意味着行尾,所以它会一直匹配到最后)。
您尝试的方法不起作用,因为[A-Za-z0-9-]+
只会匹配字母和数字,没有@
或.
。