如何保护 php 中的 cookie?
How to secure cookies in php?
session_set_cookie_params
是如何工作的?
我想确保所有 cookie 都设置为 httponly=true
和 secure=true
。
但不是将这些参数添加到对 setcookie() 的每次调用中,我可以
只是 - 在 session_start() 之前 - 将它们设置在 session_set_cookie_params()
中?
从今以后,每次调用 setcookie
都会设置那些 params
我每个 cookie?
这将节省大量繁琐的工作(而且肯定容易出错)。
我会想象这样的事情
$cookieParams = session_get_cookie_params();
$cookieParams['httponly'] = true;
$cookieParams['secure'] = true;
session_set_cookie_params($cookieParams);
session_start();
所以现在,如果我这样做:
setcookie("ABC_user", "", time()+3600);
那个 cookie 设置了参数 6 和 7 中的那些参数?有没有办法检查它是否有效?或者有更好的方法来完成这个吗?
这个简单的代码会给你你想要的。
function set_cookie($name,$content,$time){
$http_only = true;
$secure = true;
$path = "/";
$domain = ".example.com"; // Include All Subdomains
setcookie($name,$content,$time,$path,$domain,$secure,$http_only);
}
set_cookie("ABC_user", "", time() + 3600);
session_set_cookie_params
是如何工作的?
我想确保所有 cookie 都设置为 httponly=true
和 secure=true
。
但不是将这些参数添加到对 setcookie() 的每次调用中,我可以
只是 - 在 session_start() 之前 - 将它们设置在 session_set_cookie_params()
中?
从今以后,每次调用 setcookie
都会设置那些 params
我每个 cookie?
这将节省大量繁琐的工作(而且肯定容易出错)。
我会想象这样的事情
$cookieParams = session_get_cookie_params();
$cookieParams['httponly'] = true;
$cookieParams['secure'] = true;
session_set_cookie_params($cookieParams);
session_start();
所以现在,如果我这样做:
setcookie("ABC_user", "", time()+3600);
那个 cookie 设置了参数 6 和 7 中的那些参数?有没有办法检查它是否有效?或者有更好的方法来完成这个吗?
这个简单的代码会给你你想要的。
function set_cookie($name,$content,$time){
$http_only = true;
$secure = true;
$path = "/";
$domain = ".example.com"; // Include All Subdomains
setcookie($name,$content,$time,$path,$domain,$secure,$http_only);
}
set_cookie("ABC_user", "", time() + 3600);