我试图用这样的方式来写一个啪答声:
http://www.mysite.com/link/go/[email protected]
这样解释:
http://www.mysite.com/[email protected]
但我不知道如何写。 我尝试过,但它不工作。 需要帮助,请。
这是我写在我的.htaccess文件,但不工作:
选项+ FollowSymlinks 重写引擎 RewriteRule ^ link / go / overview /([A-Za-z0-9 - ] +)$ /process.php?email=$1 [NC,L]
谢谢
RewriteRule link/go/(.*)$ process.php?email=$1
这似乎工作。 您应该在process.php进行电子邮件validation,而不是为了可读性而在.htaccess规则中进行validation(另外,您至less可以在页面上看到一个很好的错误信息)。
这是因为link/go/之后的任何内容都会匹配( .匹配任何字符,所以.*表示尽可能多地匹配任何字符, (.*)表示将其保存到$1 – $ end在结尾意味着结束线,所以它会一路匹配到最后)。
你试过的东西不行,因为[A-Za-z0-9-]+只会匹配字母和数字,不会是@或. 。