django - apache載入設定檔的時候讀取環境變數的問題
天蓬老师
天蓬老师 2017-05-16 17:03:31
0
1
604

我的專案是使用django + apache部署的,為了方便的區分線上和開發環境,我在伺服器上設定了一個環境變數Z_ENV,然後在Django的設定檔中是這樣寫的,

env = os.environ.get("Z_ENV", None)
if env == "server":
    from .server_settings import *
else:
    from .local_settings import *

這樣的寫法在本地和在伺服器上使用Django自帶的某些指令都是沒問題的,例如直接執行os.environ.get("Z_ENV", None)就是 serverpython managa.py syncdb,確實是使用的server_settings裡面的配置,但是在apache載入設定檔的時候卻沒有取得到這個環境變量,然後就使用了local_settings,我是在上面加了一句print env的,然後service apache2 restart的時候在apache的日誌檔案中就是列印的None 。

環境變數修改的是/etc/profile文件,內容是Z_ENV=server export Z_ENV一開始我是對apache的使用者不生效的呢,但後來查了查,這個地方設定的環境變數是所有的使用者生效的。

來請教大家,看看是怎麼回事?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回覆(1)
迷茫

/etc/apache2/envvars 中设置 export Z_ENV=server

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板