求问nginx session无法存到服务器这是什么原因导致的?
$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 43200;
// $config['sess_save_path'] = APPPATH.'data';
$config['sess_save_path'] = BASEPATH.'../'.'session_file';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;
ci框架 在本地能存入session文件(window系统下能行)
nginx 上无法存入session文件
是什么原因
这个跟 nginx 有什么关系?是不是想说 linux? Hex 发表于 2017-3-2 15:25
这个跟 nginx 有什么关系?是不是想说 linux?
是,本地用apache行,服务器用nginx就不行
x798667323 发表于 2017-3-2 18:06
是,本地用apache行,服务器用nginx就不行
session 这个跟 apache nginx 没关系,可能跟系统有关系,这个要具体看原因,你给出的配置看起来没什么问题。 本帖最后由 初冬 于 2017-3-3 09:35 编辑
#### php 配置session很有可能是没有权限的原因
1. 修改/etc/php-fpm.d/www.conf所属用户和组用户
Eg:
; RPM: apache Choosed to be able to access some dir as httpd user = nginx ; RPM: Keep a group allowed to write in log dir. group = nginx2. 修改session文件夹的属性 命令 chown –R nginx:nginx session3. 重启php-fpm nginx service nginx -s reload不一一列举,自行百度重启命令
本帖最后由 小黑鼠 于 2017-3-3 13:27 编辑
类似的问题我也遇到过,在本地用wamp的环境下sess_save_path 配置的路径下会生成ci_session 开头的文件 ,部署到服务器后(lnmp环境) 就不会生成新的ci_session 开头的文件了,用find / -name “ci_session*”也搜不出什么 ,但是session 又是正常能用的 所以也没太在意,后来发现session被写入tmp文件夹,用的是sess_开头的文件,也就是说这个配置在windows环境下生效了,在linux环境下没有生效 ,望大神解惑
页:
[1]