Php

PHP 升級總是會破壞會話文件夾權限

  • December 7, 2016

每次我在我的 CentOS 機器上升級 php(通過 yum 升級)時​​,我的 /var/lib/session 文件夾所有權變為具有 600 權限的 root:apache。我使用 nginx 作為我的網路伺服器。這會破壞我的網站並阻止儲存會話。

解決方法是簡單地 chown nginx:nginx 文件夾。但是每次 yum 更新 php 時我都必須手動執行此操作。

我想問題源於這樣一個事實,即當我最初設置盒子時,我執行了 apache。我在哪裡可以將此配置更改為“nginx”來解決此問題?我查看了 php.ini,但在那裡看不到任何相關內容。指定了會話目錄,但沒有指定使用者。

最好的方法是為每個使用者/池使用不同的會話目錄。

在 php-fpm.d/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 應用程序都依賴於此)

引用自:https://serverfault.com/questions/582483