Cakephp帐户激活电子邮件 - 在服务器上找不到地址

时间:2010-12-10 09:06:19

标签: email cakephp activation email-address

对于我们的网站,我们使用以下教程(在cakephp中)设置帐户激活电子邮件:

http://www.jonnyreeves.co.uk/2008/06/cakephp-activating-user-account-via-email/

在我们的实际网站上,似乎激活大部分都有效,但有些人在点击激活电子邮件链接激活其帐户时收到以下错误:

错误:在此服务器上找不到请求的地址'/ users / activate / 36 / 10a1a794'。

这对我来说很奇怪,因为链接看起来很好:“用户”控制器,“激活”操作,user_id = 36和哈希码= 0a1a794。不确定为什么会发生这种错误。我读到的一件事是清除缓存文件夹中的文件,似乎没有任何改变。请帮助谢谢!

2 个答案:

答案 0 :(得分:1)

激活哈希的有效性有限(当天)。

因此,如果在任何月份的第1天发送激活电子邮件,它将在1日晚上11:59之前有效。该链接在凌晨12:00之后无法正常工作(技术上是本月的第二天)。

希望有所帮助。

答案 1 :(得分:0)

是的,这就是Josh R所说的,哈希是在同一天计算的,这是一个非常糟糕的主意。

你应该停止散列日期或者根据两个值进行验证:一个用于今天的日期,一个用于昨天的日期。

另外,建议:不要只是去那里复制文件,尝试从中学到一些东西,请按照自己的方式去做。你会学到很多东西。