2016-10-22 149 views
1

我想设置cookie only CakePHP 1.3中为此我搜索了很多东西,并应用了许多解决方案,但他们不工作。对于CakePHP 2.0和更高版本,同样的解决方案可以工作,任何人都可以在CakePHP 1.3中为我设置cookie Onlyhttp的解决方案。你使用PHP 5.2或以上Cakephp 1.3 cookie httponly不工作

回答

0

我可以设置仅Http cookie的简单的setcookie - 在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

添加仅Http功能,其Cookie的组件
0

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文件添加为仅Http参数(不推荐总线支持CakePHP的1.3不再支持,所以...)