我为开发站点(生产站点最终将在同一台服务器上)设置了一个自定义的php.ini,它将session.savepath设置为特定于该站点的目录。
你可以在https://dev.permaculture.org.nz/info1.php看到结果(一旦问题解决,将被移动或移除)。
但是,我仍然得到权限拒绝会话文件尝试写入/ var / lib / php / session错误首先,我不明白为什么“主”和“本地”的价值观是不是相反。 其次,我不知道session.save.path的“本地”值来自哪里:我在服务器上find了三个php.ini文件:/etc/php.ini / opt / remi / php56 / root / etc / php.ini /var/www/dev.permaculture.org.nz/etc/php.ini
第二个使用/ tmp,我也设置第一个到/ tmp第三个指定/var/www/dev.permaculture.org.nz/php/session – 这是根据需要,由进程拥有者拥有。
这些错误为phpmyadmin造成致命错误。
解决了进一步的研究( https://stackoverflow.com/questions/19520744/what-is-the-difference-between-local-value-and-master- value )
重写设置在/etc/httpd/conf.d/php.conf虽然有评论说它被单个的虚拟主机指令覆盖,但似乎php.ini设置不会覆盖。 当我评论这个问题时,问题就消失了。
第一,你的安装(centos 6?)似乎是一个真正的混乱。
你真的需要3个PHP安装?
你读过在php.ini中的评论?
; RPM note : session directory must be owned by process owner ; for mod_php, see /etc/httpd/conf.d/php.conf ; for php-fpm, see /etc/php-fpm.d/*conf
/etc/httpd/conf.d/php.conf是为“apache”用户设置会话path的正确位置,/etc/php.ini是所有用户共享的最差的,这只能引发权限问题会话由1个用户创build,由另一个用户清理)