【问题标题】:PHP can't setcookie()PHP 无法设置cookie()
【发布时间】:2009-03-06 20:20:42
【问题描述】:

我在 php 中过期 cookie 时遇到问题。这是我的代码:

<?php
setcookie('reitinvestor_user', 'null', time()-3600,'',$_SERVER['SERVER_NAME']);
setcookie('reitinvestor_pass', 'null', time()-3600,'',$_SERVER['SERVER_NAME']);
echo '<pre>'; print_r($_COOKIE); echo '</pre>';
exit;
?>

每次我点击刷新,我都会得到这个结果:

Array
(
    [_csuid] => 47dae7b6cd2d9e89
    [reitinvestor_user] => john
    [reitinvestor_pass] => 1f3870be274f6c49b3e31a0c6728957f
    [PHPSESSID] => 6027e370abad115e35b54b0be76befc8
)

我可以用不同的键值做一个 setcookie,也可以让它们过期。对于 reitinvestor_user 和 reitinvestor_pass,我似乎无法做到这一点。怎么了?

【问题讨论】:

    标签: php setcookie


    【解决方案1】:

    您是否检查过您是否在相同的域和路径中更改cookie?

    […] 一个用户代理 拒绝 cookie(不应存储其信息),如果任何 以下是正确的:

    • Path 属性的值不是请求的前缀- URI。

    • Domain 属性的值不包含嵌入的点或 不以点开头。

    • 请求主机的值与域不匹配 属性。

    • 请求主机是 FQDN(不是 IP 地址),格式为 HD, 其中 D 是 Domain 属性的值,H 是一个字符串 包含一个或多个点。

    ——RFC 2109

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-02
      • 1970-01-01
      • 1970-01-01
      • 2011-09-05
      • 2010-12-12
      相关资源
      最近更新 更多