Centos7

在centos 7中將環境變數傳遞給httpd

  • December 26, 2019

在我以前的Centos 6.10伺服器中,我已經能夠通過添加到**/etc/sysconfig/httpd 將一些環境變數傳遞給 httpd**

. ~/.envvars

.envvars 內容是

export MY_PASSWORD='somepassword'

然後在http.conf

SetEnv MY_PASSWORD ${MY_PASSWORD}

並通過 $_SERVER 輕鬆訪問 php 中的變數

$$ ‘MY_PASSWORD’ $$ 但是在升級到Centos 7.7後它停止工作,在我得到的日誌中: AH00111: Config variable ${MY_PASSWORD} is not defined

任何幫助是極大的讚賞

我通過進行兩項更改解決了這個問題:在 ~/.envvars 中,在我執行 export 之後,我添加了這一行以將環境變數傳遞給 systemd:

systemctl import-environment MY_PASSWORD

然後我沒有在 .bash_profile 中呼叫聲明腳本,而是使用**/etc/rc.d/init.d/functions來確保在守護程序啟動之前聲明變數,由於某種原因指令ExecStartPre**不起作用

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