如何在Drupal 7中禁用匿名用户的cookie

时间:2014-04-07 10:51:40

标签: session cookies drupal-7

我想禁用Drupal 7为匿名用户设置的Cookie。

我找到了settings.php的解决方案

ini_set('session.use_cookies', '0');
ini_set('session.use_only_cookies', '0');
ini_set('session.use_trans_sid', '1');

但这会阻止我以管理员身份登录。

那么,有人知道如何为匿名用户禁用的cookie吗?

1 个答案:

答案 0 :(得分:0)

Drupal 7没有为匿名用户设置会话cookie(至少是新版本),所以这里的痛苦就少了。

如果你想为匿名用户删除has_js cookie,你可以通过添加一段代码来解决它,在你的主题中加载额外的JS文件并在那里使cookie过期。

在主题中加载JS文件:

function yourtheme_process_page(&$variables) {
    [...code...]
    global $user;
    if ( !$user->uid) {
        drupal_add_js(drupal_get_path('theme', 'yourtheme') . '/js/remove_has_js.js');
    }
}

JS文件的内容(过去某个时间设置cookie会过期/删除它):

document.cookie = 'has_js=0; expires=Fri, 01 Jan 1977 01:00:00 GMT; path=/';