Nginx
如何設置 date.timezone 以及正確的設置位置
(我正在嘗試將一個開源的php項目部署到nginx。項目本身並不重要。)
我需要將 date.timezone 設置為我的本地時區,因為該項目使用全域設置。
我在我的 php.ini(debian 的 /etc/php/7.0/fpm/php.ini)文件中找到了一行,但因為我不想更改全域設置,所以我在 fpm/conf 中創建了一個新的 ini 文件.d/ 目錄中的行:
date.timezone = ('Europe/Berlin')
這是此處記錄的受支持的時區之一 但是當我查看我的 php 資訊時,時區反映在“本地值”和“主值”中。
我可以讓它只有這個 php 項目設置時區,而全球保持預設的 UTC?
fpm/conf.d/
掃描附加.ini
文件,從而更容易分離配置,例如每個模組。對每個 FPM 池進行掃描,即它是一個全域配置,就像php.ini
.您可以覆蓋以下單個池的單個設置
fpm/pool.d/poolname.conf
:php_admin_value[date.timezone] = Europe/Berlin
不久之後,允許使用單獨的設置、資源和使用者(權限)的 PHP FPM 池:
- 預設池配置
fpm/pool.d/www.conf
為偵聽 UNIX 套接字:listen = /run/php/php7.2-fpm.sock
另請注意,它以使用者
www-data
(或nginx
)身份執行,擁有所有權限。 2. Nginxserver{}
塊將 PHP 腳本傳遞到此套接字以供 PHP FPM 池處理:location ~ \.php$ { fastcgi_pass unix:/run/php/php7.2-fpm.sock; # another fastcgi options }
mautic
您可以通過創建額外的 FPM 池(例如fpm/pool.d/mautic.conf
,為您的 Mautic 項目)以獨立使用者身份執行單個項目的 PHP :[mautic] user = mautic group = mautic listen = /run/php/mautic.sock chdir = /var/www/mautic # or /home/mautic etc. listen.owner = www-data # or nginx(?) to let Nginx use the socket listen.group = www-data php_admin_value[date.timezone] = Europe/Berlin
並且自然而然地
/run/php/mautic.sock
在相關的 Nginx 配置中使用這個新的。官方文件從你應該已經知道基本思想的地方開始,這對初學者來說有點困難。幸運的是,有教程,或者您甚至可以享受觀看影片的樂趣。