每次我在CentOS上升级php(通过yum升级),我的/ var / lib / session文件夹的所有权变成root:apache,拥有600个权限。 我使用nginx作为我的web服务器。 这打破了我的网站,并防止会话被存储。
解决方法是简单地将nginx:nginx文件夹。 但是我必须每次yum更新php时手动执行此操作。
我想这个问题源于事实,当我最初设置箱子,我跑了阿帕奇。 我可以在哪里修改这个configuration为“nginx”来解决这个问题? 我看了一下php.ini,但在那里看不到任何相关的东西。 会话目录是指定的,但没有关于用户。
最好的方法是为每个用户/池使用不同的会话目录。
在php-fpm.d / http://www.conf(已经改变了用户),并在评论中解释。
user = foo ; Set session path to a directory owned by process user php_value[session.save_handler] = files php_value[session.save_path] = /var/lib/php/foo/session php_value[soap.wsdl_cache_dir] = /var/lib/php/foo/wsdlcache
因此,这些新目录在下次更新时不会更改。
顺便说一句,绝对没有必要改变用户,你可以使用nginx并保持fpm作为apache运行(特别是大多数打包的web应用程序依赖于此)