How to change cookie name

时间:2015-09-08 作者:toheloko

我想知道如何将名称更改为wordpress正在设置的Cookie,例如在登录时。

wordpress_test_cookie = sitename_test_cookie
或/和

 wordpress_logged_in = sitename_test_cookie

2 个回复
SO网友:birgire

查看wp_cookie_constants()ms_cookie_constants() 函数,以查看可用的Cookie。

我们可以在wp-config.php 文件:

// Here we just simulate how it\'s done in the core
define( \'COOKIEHASH\',           md5( \'http://example.tld\' )    ); 

// Then we override the cookie names:
define( \'USER_COOKIE\',          \'wpse_user_\'      . COOKIEHASH );
define( \'PASS_COOKIE\',          \'wpse_pass_\'      . COOKIEHASH );
define( \'AUTH_COOKIE\',          \'wpse_\'           . COOKIEHASH );
define( \'SECURE_AUTH_COOKIE\',   \'wpse_sec_\'       . COOKIEHASH );
define( \'LOGGED_IN_COOKIE\',     \'wpse_logged_in_\' . COOKIEHASH );
define( \'TEST_COOKIE\',          \'wpse_test_cookie\'             );
或使用PHP 5.6+:

// Then we override the cookie names:
const USER_COOKIE        = \'wpse_user_\'      . COOKIEHASH;
const PASS_COOKIE        = \'wpse_pass_\'      . COOKIEHASH;
const AUTH_COOKIE        = \'wpse_\'           . COOKIEHASH;
const SECURE_AUTH_COOKIE = \'wpse_sec_\'       . COOKIEHASH;
const LOGGED_IN_COOKIE   = \'wpse_logged_in_\' . COOKIEHASH;
const TEST_COOKIE        = \'wpse_test_cookie\';
我们必须调整网站url的位置http://example.tld 满足我们的需求。

但我也想知道,作为“PieterGoosen”,为什么你需要改变它。

SO网友:user1138

要添加到评论。。。更改测试cookie的另一个原因是为了阻止错误的登录。直接从总是很好的问阿帕奇。。。

http://www.askapache.com/security/stop-wordpress-exploits-spam/#Block_Logins_bad_cookie

Block Logins with bad cookie

你们都应该使用自定义的登录cookie名称,该名称可以在wp配置中用常量定义。php文件。这意味着永远不会设置默认的cookie wordpress\\u test\\u cookie,因此您可以阻止使用此默认值的机器人程序!

偏离默认值的方法是在wp配置中将该常量设置为您想要的任何值。php

define( \'TEST_COOKIE\', \'use_this_cookie_name_instead_of_wordpress_test_cookie\' );

Block bad test cookies

RewriteCond %{THE_REQUEST} ^POST.*wp-login [NC]
RewriteCond %{HTTP:Cookie} "wordpress_test_cookie=WP+Cookie+check" [NC]
RewriteRule .* - [F]\'

相关推荐

Cookies in template

我需要根据cookies只显示一次页面的某些部分。主要问题是我只能在插件中设置cookie,挂起init操作。我已经读了20页的谷歌,这个网站,问了2个论坛,但我仍然有这个问题。任何帮助都将不胜感激!