Возможная проблема с разрешением при использовании upstart script / uwsgi - PullRequest
0 голосов
/ 25 апреля 2020

Я пытаюсь настроить приложение Apache / uwsgi / Django на Centos 7. Я смог установить apache для запросов прокси к uwsgi. Я также установил INI-файл, чтобы связать UWSGI с моим Django приложением. Дело в том, что мне не хватает чего-то в сервисе systemd для запуска сервера uwsgi. Я подозреваю, что некоторые проблемы с разрешениями. если я вручную запускаю сервер с

uwsgi --ini /home/foo/env/app/uwsgi.ini

, тогда все работает как чудо, но когда я запускаю сервер с

systemctl start uwsgi

, который соответствует настроенной службе, сервер запускается без ошибки, но определенные представления в моем приложении просто терпят неудачу. Смотря логи, я вижу много ошибок, подобных этим

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/foo/env/lib/python3.6/site-packages/django/template/base.py", line 903, in _resolve_lookup
    (bit, current))  # missing attribute
Traceback (most recent call last):
  File "/home/foo/env/lib/python3.6/site-packages/django/template/base.py", line 882, in _resolve_lookup
    current = current[bit]
  File "/home/foo/env/lib/python3.6/site-packages/django/template/context.py", line 87, in __getitem__
    raise KeyError(key)
KeyError: 'form'

During handling of the above exception, another exception occurred:

File "/usr/lib64/python3.6/traceback.py", line 105, in print_exception
    print(line, file=file, end="")
UnicodeEncodeError: 'ascii' codec can't encode character '\xf8' in position 18057: ordinal not in range(128)

Эти же представления отлично работают при ручном запуске uwsgi.

это мой конфигурационный файл systemd uwsgi.service:

[Unit]
Description=uWSGI server for Bookings
After=network.target

[Service]
#User=nobody
#Group=nobody
#WorkingDirectory=/home/foo/env/bookings
#Environment="PATH=/home/foo/env/bin"
env PATH=/home/foo/env/bin
ExecStart=/usr/local/bin/uwsgi --ini /home/foo/env/bookings/rsv/uwsgi.ini
Restart=always
KillSignal=SIGQUIT
Type=notify
StandarError=syslog
notifyAccess=all

[Install]
WantedBy=multi-user.target

и это мой файл .ini

[uwsgi]
#module = wsgihandler
master = true
processes = 10
threads = 2

socket = 127.0.0.1:9000
chdir = /home/foo/env/bookings/
wsgi-file = rsv/wsgi.py
module = rsv.wsgi:application
enable-threads = true
home = /home/foo/env
virtualenv = /home/foo/env
#env LANG=en_US.utf8
#env LC_ALL=en_US.UTF-8
#env LC_LANG=en_US.UtF-8
uid = nobody
gid = nobody
stats = 127.0.0.1:9191
logto = /home/foo/env/bookings/logs/uwsgi.log

Любая помощь будет оценена :) TNX!

...