【发布时间】: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
我想在 cakePHP 1.3 中设置 cookie onlyHttp 为此我搜索了很多东西并应用了很多解决方案,但它们都不起作用。同样的解决方案适用于 CakePHP 2.0 及更高版本,谁能建议我在 CakePHP 1.3 中设置 cookie Onlyhttp 的解决方案。
【问题讨论】:
标签: php cakephp cookies session-cookies cakephp-1.3
CakePHP 1.3 使用__write() 函数来设置cookie。其中设置 cookie 使用:
setcookie(
$this->name . $name,
$this->__encrypt($value),
$this->__expires,
$this->path,
$this->domain,
$this->secure
);
如您所见,httpOnly 参数永远不会被传递。您可以:
【讨论】:
如果您使用的是 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 功能
【讨论】: