简单的代码到期Drupal cookie?

简单的代码到期Drupal cookie?,第1张

概述只需单击一下,这个简单的脚本就可以进行多次注销: Moodle的 埃尔格 2 MyBB和 (不是)Drupal. <?phpsetcookie( 'Elgg', '', -3600, '/', '.domain.com', false, false);setcookie( 'http_auth_ext_complete', '1', -3600, '/d/', '.domain.com', f 只需单击一下,这个简单的脚本就可以进行多次注销:

Moodle的

埃尔格

2 MyBB和

(不是)Drupal.

<?PHPsetcookie( 'Elgg','',-3600,'/','.domain.com',false,false);setcookie( 'http_auth_ext_complete','1','/d/',false);// setcookie( 'http_auth_ext_complete','domain.com',false); setcookie( 'mybbuser',false);setcookie( 'mybbuser','/bb/',false);   // unset all 3 Moodle cookies,the lazy way    if (isset($_SERVER['http_cookie'])) {        $cookies = explode(';',$_SERVER['http_cookie']);        foreach($cookies as $cookie) {            $parts = explode('=',$cookie);            $name = trim($parts[0]);            setcookie($name,time()-1000);            setcookie($name,time()-1000,'/');        }    }    ?>

这适用于四个站点,但Drupal cookie不会退出.我怎么能和Drupal一样呢?

注意:Drupal使用’host’而不是’domain’,无论是否使用’.’到目前为止工作.

谢谢.

编辑:
我确定cookie两次有“Host domain.com”,另一次登录使用更标准的格式“Domain .domain.com”

名为“http_auth_ext_complete”的cookie过期,我仍然登录.Drupal使用第二个cookie,会话ID作为cookie名称,会话数据库表中也有匹配的条目.

解决方法 Drupal使用的会话cookie的名称不是常量,而是基于特定Drupal安装的cookie域的MD5哈希构造 – 有关详细信息,请参阅“bootstrap.inc”中的 conf_init()(哈希发生在函数的最后一行) ).

此会话cookie是您需要删除以执行注销的cookie.如果您的脚本仅适用于特定的Drupal实例,则可以将其调整为使用特定的会话cookie名称(如果cookie域发生更改,则会中断).如果它用于更广泛的用途,你需要提出一个动态版本,模仿Drupal生成名称的方式,即’SESS’. md5([cookie_domain]),在SSL的情况下有一些复杂性.

总结

以上是内存溢出为你收集整理的简单的代码到期Drupal cookie?全部内容,希望文章能够帮你解决简单的代码到期Drupal cookie?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1062385.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存