【问题标题】:Cakephp 1.3 cookie httponly not workingCakephp 1.3 cookie httponly 不工作
【发布时间】:2017-03-04 13:05:35
【问题描述】:

我想在 cakePHP 1.3 中设置 cookie onlyHttp 为此我搜索了很多东西并应用了很多解决方案,但它们都不起作用。同样的解决方案适用于 CakePHP 2.0 及更高版本,谁能建议我在 CakePHP 1.3 中设置 cookie Onlyhttp 的解决方案。

【问题讨论】:

    标签: php cakephp cookies session-cookies cakephp-1.3


    【解决方案1】:

    CakePHP 1.3 使用__write() 函数来设置cookie。其中设置 cookie 使用:

    setcookie(
       $this->name . $name, 
       $this->__encrypt($value), 
       $this->__expires, 
       $this->path, 
       $this->domain, 
       $this->secure
    );
    

    如您所见,httpOnly 参数永远不会被传递。您可以:

    • 直接在您的应用中使用 setcookie 函数
    • 扩展 CookieComponent 以支持 httpOnly 标志
    • 破解 CakePHP 核心 CookieComponent 文件以添加对 httpOnly 参数的支持(不推荐的总线 CakePHP 1.3 不再支持,所以...)

    【讨论】:

      【解决方案2】:

      如果您使用的是 PHP 5.2 或更高版本,您可以使用简单的 setcookie 设置 httpOnly cookie - 在 PHP 5.2 中引入了 httponly 标志

      bool setcookie ( string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bool $secure = false [, bool $httponly = false ]]]]]] )
      

      CakePHP 在 CakePHP 2.0 的 Cookie 组件中添加了 httpOnly 功能

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-15
        • 1970-01-01
        • 2015-02-13
        • 2020-09-29
        • 1970-01-01
        相关资源
        最近更新 更多