session_start():您的uid不会创建会话数据文件

Ore*_*ous 5 php session

我想将创建的会话存储在根目录上的目录中,除非我使用以下任何一项:

    session_save_path($_SERVER['DOCUMENT_ROOT'] . '/../storage/sessions');
    session_save_path($_SERVER['DOCUMENT_ROOT'] . '/../storage/sessions/'); // With an extra slash at the end
ini_set('session.save_path', $_SERVER['DOCUMENT_ROOT'] . '/../storage/sessions');
ini_set('session.save_path', $_SERVER['DOCUMENT_ROOT'] . '/../storage/sessions/'); // Again with the extra slash
Run Code Online (Sandbox Code Playgroud)

并没有这些方法之一工作,每当我加载页面时,我会收到以下错误:

警告:session_start():您的uid不会在第25行的/var/www/bootstrap/bootstrap.php中创建会话数据文件

警告:session_start():无法读取会话数据:第25行/var/www/bootstrap/bootstrap.php中的文件(路径:/var/www/public/../storage/sessions/)

谁能帮我?

编辑:我的服务器在PHP 7.1上运行

zor*_*red 7

PHP要求会话文件由运行PHP的用户拥有.

然后chown -R www-data:www-data /var/www/storage/sessions/由PHP用户运行自己的会话文件夹和文件(由www-data:www-dataPHP用户和组分隔:).

您可以使用PHP方法get_current_user()或在bash中运行,php -i | grep user并找到在那里运行PHP的用户.