我遇到了一些奇怪的问题。
这个问题发生在服务器上。我在过去的5-6天里一直面临这个问题。它一直为我工作到去年。
当我调用登录api时,如果用户凭证是正确的,那么我创建一个会话。
下面是我的代码:if ($user){
if ($user['is_active'] == 1){
global $user_data;
$user_data = $user;
$response["error"] = false;
$_SESSION['user_data'] = $user; // -- session is create
print_r($_SESSION); // session is print.
$_SESSION['is_login'] = 'No';
unset($_SESSION['sessionX']);
$response['user_id'] = $user['user_id'];
$response['name'] = $user['name'];
$response['email'] = $user['email'];
$response['apiKey'] = $user['api_key'];
$response['createdAt'] = $user['created_date'];
} else {
$response['error'] = true;
$response['message'] = 'Your Account is Not Active';
}
} else {
// user credentials are wrong
$response['error'] = true;
$response['message'] = 'Login failed. Incorrect credentials';
}
这部分的print_r:
Array
(
[slim.flash] => Array
(
)
[db_name] => arcade_intecigar
[user_data] => Array
(
[user_id] => 1
[name] => zzz
[email] => zzz@abc.com
[api_key] => 3fef39209b3d03039cdb81d39566eb66
[lang_id] => en_US
[created_date] => 0000-00-00 00:00:00
[profile_pic] => ""
[img] => 1461269872mk-ok.png
[subscription_id] => 20
[is_active] => 1
[role_id] => 1
[delete_permission] => 1
[phone_number] => +14507013
[country_code] => 1
[total_usage_funds] => 0.0024999999441206
[total_available_funds] => 0.99750000238419
[paid] => trial
[currency] => USD
)
)
登录后,我将我的应用程序重定向到仪表板页面,并检查会话是否可用,但奇怪的是会话不可用。它总是把我重定向到登录页面。
看下面的代码
print_r($_SESSION); // it is display a blank
if (!isset($_SESSION['is_login']) && !isset($_SESSION['is_lock'])) {
echo "<script>window.location='" . SITE_URL . "login.php?redirect=" . $_SERVER['REQUEST_URI'] . "';</script>";
}
if (isset($_SESSION['is_login']) && $_SESSION['is_login'] == 'NO' || $_SESSION['is_login']== 'No') {
echo "<script>window.location='" . SITE_URL . "login.php?redirect=" . $_SERVER['REQUEST_URI'] . "';</script>";
}
这部分的print_r:
Array ( [db_name] => arcade_intecigar )
这个问题的发生是因为,在服务器上没有索引节点内存可用于更多的会话创建,据我所知,当会话在php中创建时,时间会话文件也是创建的,所以没有内存可用,这就是为什么会话不创建。
使用df -i
命令了解服务器上的inode内存。
点击此链接了解更多信息:https://www.ivankuznetsov.com/2010/02/no-space-left-on-device-running-out-of-inodes.html