django - Masalah membaca pembolehubah persekitaran apabila apache memuatkan fail konfigurasi
天蓬老师
天蓬老师 2017-05-16 17:03:31
0
1
586

Projek saya digunakan menggunakan django + apache Untuk mudah membezakan antara persekitaran dalam talian dan pembangunan, saya menetapkan pembolehubah persekitaran pada pelayan Z_ENV, dan kemudian menulis ini dalam fail konfigurasi Django,

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

Cara penulisan ini tiada masalah apabila menggunakan beberapa arahan yang disertakan dengan Django secara tempatan atau pada pelayan Contohnya, apabila menjalankan os.environ.get("Z_ENV", None)就是server或者python managa.py syncdb,确实是使用的server_settings里面的配置,但是在apache载入配置文件的时候却没有获取到这个环境变量,然后就使用了local_settings,我是在上面加了一句print env的,然后service apache2 restart secara langsung, Tiada dicetak dalam fail log apache.

Pengubahsuaian pembolehubah persekitaran ialah /etc/profile文件,内容是Z_ENV=server export Z_ENVPada mulanya, ia tidak berkuat kuasa untuk pengguna apache, tetapi kemudian saya menyemak dan mendapati pembolehubah persekitaran yang ditetapkan di sini berkesan untuk semua pengguna.

Jom tanya semua orang apa yang berlaku?

天蓬老师
天蓬老师

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

membalas semua(1)
迷茫

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

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan