如何在 PHP 中设置带有安全标志的 cookie?
How to set a cookie with the secure flag in PHP?
我想在我的代码中将 httponly 和安全标志设置为 true,但是当我尝试设置该 cookie 时。在这种情况下,cookie 不会被创建并且无法登录到站点。
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);
session_name('sim');
$_SESSION['nons']=rand(1,999999999);
$value=md5($_SERVER["REMOTE_ADDR"]." ".$_SERVER["HTTP_USER_AGENT"]." ".$_SESSION['nons']);
$_SESSION['sim']=$value;
session_start();
session_regenerate_id();
这是用于创建会话 cookie 的代码,删除下面的代码后将完美运行
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);
但为了安全起见,我需要设置一个 cookie 标志
安全标志表示 "This cookie is only valid over HTTPS"。
您正在使用 HTTP(没有 S)。
这意味着 cookie 无效,浏览器正确 忽略它。
如果您的通信渠道不安全,您不能要求 cookie 是安全的。
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);
session_name('sim');
$_SESSION['nons']=rand(1,999999999);
$value=md5($_SERVER["REMOTE_ADDR"]." ".$_SERVER["HTTP_USER_AGENT"]." ".$_SESSION['nons']);
$_SESSION['sim']=$value;
session_start();
session_regenerate_id();
这是用于创建会话 cookie 的代码,删除下面的代码后将完美运行
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);
但为了安全起见,我需要设置一个 cookie 标志
安全标志表示 "This cookie is only valid over HTTPS"。
您正在使用 HTTP(没有 S)。
这意味着 cookie 无效,浏览器正确 忽略它。
如果您的通信渠道不安全,您不能要求 cookie 是安全的。