PHP会话处理错误 [英] PHP session handling errors
问题描述
我在send.php
文件的最顶部有这个文件:
I have this at the very top of my send.php
file:
ob_start();
@session_start();
//some display stuff
$_SESSION['id'] = $id; //$id has a value
header('location: test.php');
以下是我的test.php文件顶部的内容:
And the following at the very top of my test.php file:
ob_start();
@session_start();
error_reporting(E_ALL);
ini_set('display_errors', '1');
print_r($_SESSION);
当数据发送到test.php
时,将显示以下内容:
When the data sends to test.php
, the following is displayed:
Array ( )
警告:未知:open(/var/lib/php/session/sess_isu2r2bqudeosqvpoo8a67oj02,O_RDWR)失败:权限被拒绝(13)在第0行的未知中
Warning: Unknown: open(/var/lib/php/session/sess_isu2r2bqudeosqvpoo8a67oj02, O_RDWR) failed: Permission denied (13) in Unknown on line 0
警告:未知:无法写入会话数据(文件).请在第0行的未知"中验证session.save_path的当前设置正确(/var/lib/php/session)
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0
我只尝试使用session_start();但是结果是一样的.
I've tried only using session_start(); but the results are the same.
推荐答案
查看您的消息
首先,与许可有关
open(/var/lib/php/session/sess_isu2r2bqudeosqvpoo8a67oj02,O_RDWR)失败:第0行上的未知"权限被拒绝(13)
open(/var/lib/php/session/sess_isu2r2bqudeosqvpoo8a67oj02, O_RDWR) failed: Permission denied (13) in Unknown on line 0
您必须检查文件权限
更改模式/var/lib/php/session/
you have to check file permission
change mode this /var/lib/php/session/
第二件事与session.save_path
警告:未知:无法写入会话数据(文件).请在第0行的未知"中验证session.save_path的当前设置正确(/var/lib/php/session)
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0
在php.ini中
[Session]
; Handler used to store/retrieve data.
session.save_handler = files
; Argument passed to save_handler. In the case of files, this is the path
; where data files are stored. Note: Windows users have to change this
; variable in order to use PHP's session functions.
;
; As of PHP 4.0.1, you can define the path as:
;
; session.save_path = "N;/path"
;
; where N is an integer. Instead of storing all the session files in
; /path, what this will do is use subdirectories N-levels deep, and
; store the session data in those directories. This is useful if you
; or your OS have problems with lots of files in one directory, and is
; a more efficient layout for servers that handle lots of sessions.
;
; NOTE 1: PHP will not create this directory structure automatically.
; You can use the script in the ext/session dir for that purpose.
; NOTE 2: See the section on garbage collection below if you choose to
; use subdirectories for session storage
;
session.save_path = /tmp/ <= HERE YOU HAVE TO MAKE SURE
; Whether to use cookies.
session.use_cookies = 1
这篇关于PHP会话处理错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!