I session.cookie_secure bis 1/true in der php.ini und laufen Sie den folgenden Code hinter Apache oder PHP-FPM + nginx-Server festgelegt haben -session.cookie_secure stellt nicht das sichere Cookie-Attribut
<!DOCTYPE html>
<?php
$cookie_name = "user";
$cookie_value = "John Doe";
setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
?>
<html>
<body>
<?php
if(!isset($_COOKIE[$cookie_name])) {
echo "Cookie named '" . $cookie_name . "' is not set!";
} else {
echo "Cookie '" . $cookie_name . "' is set!<br>";
echo "Value is: " . $_COOKIE[$cookie_name];
}
?>
</body>
</html>
Nach dem Neustart von php-fpm/apache erscheint das Attribut 'secure' nicht im Set-Cookie-Header. Geprüft wget und Firefox (Entwickler-Tools> Toggle-Tools> Netzwerk) mit
echo session_get_cookie_params()[secure];
liefert 1. HTTPS CGI-Parameter Erzwingen von Ein-/Ausschalten keinen Unterschied machen. Diese Änderung wurde mit verifizierter -
echo $_SERVER['HTTPS'];
Diesem dem gleichen Ergebnis in RHEL/CentOS/EL 6 geben (PHP 5.3.3), RHEL/CentOS/EL 7 (PHP 5.4) und Gentoo (PHP 5.6.29)