Wordpress等PHP脚本中cookie登录问题的原因是什么?

时间:2012-12-07 10:32:15

标签: php wordpress session web-applications cookies

我想知道大多数PHP脚本(如Wordpress)中cookie登录问题的原因是什么?

这是WordPress登录页面和许多其他PHP脚本中常见的问题。有时您无法登录,它会告诉您清除浏览器cookie数据。

在我们的Web应用程序开发中,哪些因素可能导致此问题以及如何避免此问题?

1 个答案:

答案 0 :(得分:1)

这是一个非常广泛的问题。我个人没有经历过Wordpress,但有可能:分配给用户的cookie的 set 最终处于冲突状态,程序不知道如何继续。

例如,假设我们在登录时设置了一个名为“login”的cookie,其中包含一个用户名。我们假设我们在退出时设置了一个cookie,称为“logout”,我们删除了“login”cookie。现在,如果我们在登录屏幕上,并且程序收到两个cookie,那么很明显它不应该失败 - 可以忽略“登录”cookie。但可能是某些应用程序混淆了,并在这些明显冲突的情况下引发错误。开发人员的工作一如既往地采取防御性的方案,因此即使意外输入,它仍然可以尽可能地工作。

正如我所说,我没有经历过Wordpress,但我最近发现WP可能更容易受到影响,因为它不使用会话 - 只是cookie。我找到的一个WP主机根本不支持$_SESSION,因为在托管服务器场中实施它很棘手。现在,通过会话,如果取消设置值,它将消失,因为您可以在服务器上控制它。但是使用cookie,如果你取消设置一个值,它只是一个请求,浏览器可能不会尊重它,或者客户端时间设置可能错误地允许死cookie继续存在。