我能够在3天前创建会话。代码保持不变。但现在我无法创建会话。错误消息:Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (c:\web\dev\session) in Unknown on line 0
。
如果我将路径c:\web\dev\session
复制到windows run命令中,它会打开路径,以便我验证路径是否存在。我也收到错误:Warning: session_start(): The session id is too long or contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in C:\Web\dev\backdoor\request.php on line 10
但我没有指定PHP ID。
我的代码如下所示:
$user_row
是一个数组,其中包含会话的所有用户数据。
session_save_path('c:\web\dev\session');
session_start();
$_SESSION['user'] = $user_row;
$_SESSION['security']['ip'] = $_SERVER['REMOTE_ADDR'];
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$_SESSION['forwarded_for'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$_SESSION['security']['forwarded_for'] = false;
}
我正在使用Apache 2.4和PHP 5.6
我见过this link但是如果您使用IIS,它似乎只能解决问题。我似乎无法找到Apache的解决方案。
我还尝试从根目录中删除.htaccess文件。
答案 0 :(得分:1)
尝试将您的php会话ID设置为某些内容,看看是否有效。
我遇到了同样的问题,当我将php id设置为有效的东西时。我认为这是一个需要解决的新php版本中的错误或故障