ile çalıştırıldığında ortam değişkenlerini dikkate almaz. Hangi ayarları kullanacağına karar vermek için DJANGO_MODE
ortam değişkeni kullanan bir django web sitem var - geliştirme veya aşamalandırma. Ortam değişkeni bashrc
'dadır ve uygulamayı geliştirme sunucusunu kullanarak çalıştırırken her şey iyi çalışıyor.Django, uWSGI
Ancak uygulamayı uWSGI
kullanarak çalıştırdığımda, ortam değişkenini fark etmiyor ve üretim yerine varsayılan (geliştirme) ayarlarını kullanıyor görünmüyor.
Emperror modunda uWSGI
çalıştırıyorum ve ortam değişkeninin göz ardı edilmesi dışında her şey iyi çalışıyor gibi görünüyor. Ve evet, uWSGI
çalıştıran kullanıcı, bashrc
'un DJANGO_MODE
ayarlanmış olduğu ile aynıdır.
exec uwsgi --emperor /etc/uwsgi/vassals --uid web_user --gid --web_user
Ve vassal için ini
dosyası - -
uWSGI
çalıştırmak için kullanılan komuttur
[uwsgi]
processes = 2
socket = /tmp/uwsgi.sock
wsgi-file = /home/web_user/web/project_dir/project/wsgi.py
chdir = /home/web_user/web/project_dir
virtualenv = /home/web_user/.virtualenvs/production_env
logger = syslog
chmod-socket = 777
Bunu vassal'a eklemeyi denedim, işe yaramadı. – elssar
os.environ'da DJANGO_MODE bulunup bulunmadığını kontrol etmek için biraz baskı ekleyin, belki başka bir probleminiz var. Dikkatle göz atın DJANGO_SETTINGS_MODULE en baştan ayarlandı, bu nedenle kontrol, wsgi.py – roberto
Doh! Env içinde boşluklar ayarlanmıştı - 'env = DJANGO_MODE = mode', bu da sorunlara neden oluyordu. – elssar