我有一個運行在Ubuntu 16.04上的Nginx和Gunicorn的Django項目。 我正在嘗試設置一個環境變量以便爲生產加載不同的設置文件。我已經嘗試過以下幾點,以不佔上風。Ubuntu爲Django設置環境變量
在etc/environment中我添加了我的變量。該文件看起來像這樣,
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
PRODUCTION="Production_Variable"
該變量的值是不相關的。
當我運行printenv時,我可以看到這個變量實際上是存在的! 但是我的django項目仍然沒有「看到」它。
try:
if 'PRODUCTION' in os.environ:
from .prod import *
except:
pass
我有點困惑,printenv顯示環境變量存在,但Django無法看到它。有什麼東西看起來公然錯誤,我正在嘗試?
你設置環境之前推出的Django?設置僅在啓動時評估。 – wmorrell
我確保在設置變量後重新啓動它。 –
而且您正在驗證您的導入語句是否已運行,並且不會拋出異常? – wmorrell