我们正在将网站从http移至https,http网站设置了一些Cookie,允许设备访问某些区域。我已经重新设计了代码,使用安全标志设置cookie,以便必须通过HTTPS返回。
我们有几个设备,我们可以实际访问,但我需要更改它们的cookie。
有没有办法检查cookie是否在php中设置了安全标志。我希望检查cookie检查是否设置了标志,如果没有,请使用设置的安全标志重新生成cookie。
有办法吗?
答案 0 :(得分:0)
设置安全Cookie: 要设置安全标记,请参阅此post和PHP reference。
//php code to create secure cookie.
bool setcookie ( string $name [, string $value = "" [, int $expire = 0 [, string $path = "" [, string $domain = "" [, bool $secure = false [, bool $httponly = false ]]]]]] )
你是在追随布尔secure = true
& httponly=false
读取Cookie是否安全:
并检查其安全性。参考this post
描述
array session_get_cookie_params(void)获取会话cookie 参数。
返回值
返回一个包含当前会话cookie信息的数组 数组包含以下项目:
“life” - cookie的生命周期(以秒为单位)。 “路径” - 路径
存储信息的地方。 “domain” - cookie的域名。
“安全” - 只应通过安全连接发送cookie。
“httponly” - 只能通过HTTP协议访问cookie。
//php code to check if its secure
$CookieInfo = session_get_cookie_params();
var_dump($CookieInfo);
echo $CookieInfo['secure'];
如果您使用单个Cookie ,这也是来自其他筹码的useful post。