AWS PHP 7 会话在每次重置时都会重置



我在部署项目时对AWS非常陌生,我发现会话没有被存储。

因此,在Google和stack-Overflow的帮助下,我试图解决IS并尝试以下代码

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
ini_set('display_errors', 'on');
//ini_set('session.gc_maxlifetime', 1500);
ini_set("session.save_handler", "files");
$dir=getcwd() . '/ses'; //folder with 777 permission 
ini_set('session.save_path', $dir);
//ini_set('session.name', "name-session");
ini_set('session.gc_probability', 1);
ini_set('session.use_only_cookies', 0);
//ini_set('session.serialize_handler', '');
$sId = session_id();if ($sId == '') { session_start(); }
print_r($_SESSION);
$_SESSION['loggedIn']="swarna";
$_SESSION['name']=session_name();
$_SESSION['cookie_params']=session_get_cookie_params();
$_SESSION['cache_expire']=session_cache_expire();
$_SESSION['session_id']=session_id();
$_SESSION['maxlifetime']=ini_get("session.gc_maxlifetime");
echo "<br> n <pre>";
print_r($_SESSION);
print_r(scandir($dir));
echo "<br> n </pre>";

但是每次刷新时它都不起作用,它将第一个print_r($_SESSION);打印为空,第二个具有不同的会话 ID,而 expedition 第一个具有我上次执行存储的相同数据。

Array ( )
Array
(
[loggedIn] => swarna
[name] => name-session
[cookie_params] => Array
(
[lifetime] => 0
[path] => /
[domain] => 
[secure] => 
[httponly] => 
)
[cache_expire] => 180
[session_id] => qip9hisbsh901gbpbjef4qe70c
[maxlifetime] => 1440
)
Array
(
[0] => .
[1] => ..
[2] => sess_2rkl7v7h593ih942i1k14o9s4d
[3] => sess_4ccmmm0efq7quj26pm6r0ue9sn
[4] => sess_8rvh2nd9n0ng4vtekevh6p26ef
[5] => sess_lj4r99u9gf22ur935jr4gbcd97
[6] => sess_qip9hisbsh901gbpbjef4qe70c
)

现在我在 AWS Amazon Linux 2 服务器中使用 php7 。任何人都可以指导我该怎么做吗? 他们的.

我也试过

这与AWS或ec2无关,我建议您在脚本开头将所有PHP注释掉到变量中,并在脚本开头始终使用session_start((

最新更新