WordPress Cookies

2条评论

WordPress使用cookies技术(能够让网站服务器把少量数据存储到客户端的硬盘或内存,或是从客户端的硬盘读取数据信息的一种技术)以验证您的身份。WordPress cookies有登陆用户cookies和评论人cookies之分。

用户

用户是在WordPress上有注册帐户的人员。

当您 从http://example.com/wp-login.php登陆到WordPress时,WordPress就会存储以下两个cookies:

  • 您的用户名
  • 密码的双哈希拷贝

注意:2.5版本已不再是两个cookies了。现在只有一个cookie,它包括了所有必需信息。这个页面在未来某个时刻会更新。我尚未完全理解这个新系统,否则,我马上就会更新!chmac 09:33, 2008年5月2号 (UTC)

cookies生成一年后会自动失效。

真正的cookies包含了哈希数据,因此您不必担心有人看到您的cookies数据就能得知您的用户名和密码。哈希常被应用到输入数据中(在这里是指你的用户名和密码),它是数学公式计算出的结果。对于当今的计算机水平而言,反转哈希(hash)几乎是不可能的。这就意味着破解哈希,发现输入数据非常困难。

WordPress使用这两个cookies以绕过wp-login.php的密码输入部分。如果WordPress发现你的cookies有效,你就可以直接进入管理界面,如果你没有cookies,或已到期,或由于其它原因致使其无效(如手动编辑后失效等),系统就会要求你重新登陆以获取新的cookies。

可在/wp-includes/pluggable-functions.php中设置或删除cookies。

wp_setcookie($username, $password, $already_md5 = false, $home = '', $siteurl = '')
这是设置cookies的函数。
wp_clearcookie()
此函数将从客户端浏览器中删除cookie。当用户在管理界面点击登出时会出现这一情况。

以下函数也使用了cookies:

auth_redirect()
核查客户端浏览器是否有cookie。如果没有,系统将显示wp-login.php登陆页面。登陆后,用户就可访问所需页面了。

 

评论人

当访客访问您的博客时,他们的计算机也会存储cookies。这确实很方便,因为下次这个访客想对您的博客发表评论时就无需再次输入所有信息了。系统为评论人设置了三个cookies:

  • comment_author
  • comment_author_email
  • comment_author_url

同样,cookies中的所有数据都已用哈希保护。访客返回您的博客时,WordPress会检查他们是否有cookie,然后会比较他们的哈希数据和WordPress数据库存储的数据是否一致。

评论人的cookies一年之内就会失效。

 

更多参考

#1
很强大且实用的功能
#2
中间有点不明白...