Мне не удалось установить защищенный флаг с session_set_cookie_params(...), поэтому я сделал, после session_start() установить cookie PHPSESSID, с setcookie(...). Окончательный параметр, true, делает файл cookie безопасным.
<?php
session_start();
$currentCookieParams = session_get_cookie_params();
$sidvalue = session_id();
setcookie(
'PHPSESSID',//name
$sidvalue,//value
0,//expires at end of session
$currentCookieParams['path'],//path
$currentCookieParams['domain'],//domain
true //secure
);
?>
Когда я проверил файл cookie PHPSESSID в Firefox, его свойство "Отправить для" было установлено только "Зашифрованные соединения", а его свойство "Истекает" было установлено "В конце сеанса".