Gunicorn se comporter différemment lorsque vous commencez avec le terminal et le service

j'utilise nginx + gunicorn + django Pour votre site.

Voici mon fichier gunicorn.conf:

description "Gunicorn daemon for Django project"

start on (local-filesystems and net-device-up IFACE=eth0)
stop on runlevel [!12345]

# If the process quits unexpectadly trigger a respawn
respawn

setuid django
setgid django
chdir /home/django

# export LC_ALL=en_US.UTF-8
# export LC_LANG=en_US.UTF-8
# export LANG=en_US.UTF-8

exec gunicorn \
--name=eduwiki \
--pythonpath=eduwiki \
--bind=0.0.0.0:9000 \
--log-level debug \
--log-file /var/log/gunicorn/error_logs.log \
--config /etc/gunicorn.d/gunicorn.py \
eduwiki.wsgi:application

# --access-logfile /var/log/gunicorn/acclogs.log \

Quand je cours

service gunicorn start

Et quand je me tourne au directeur

/home/django

Prochaine équipe (qui coïncide avec des codes dans le fichier de configuration précédent) Travaillé comme charme:

exec gunicorn     --name=eduwiki     --pythonpath=eduwiki     --bind=0.0.0.0:9000     --log-level debug     --log-file /var/log/gunicorn/error_logs.log     --config /etc/gunicorn.d/gunicorn.py     eduwiki.wsgi:application

Mais le premier ne peut pas être lancé lorsque je supprime une pièce de journalisation dans le fichier de configuration: exec gunicorn \ --name = eduwiki \ --pythonpath = eduwiki \ --bind = 0.0.0.0: 9000 \ --config / etc / gunicorn.d / gunicorn.py \ eduwiki.wsgi: Annexe C.

service gunicorn start

, Le service commence. Mais il se comporte différemment plutôt que directement dans le terminal.

Lorsqu'il est démarré directement à partir du terminal, l'encodage des caractères affichés sur la page Web est correct, par exemple les éléments suivants:

Mathématiques (De grec μάθημα máthēma, "Connaissance, apprentissage, formation")

Mais quand je cours gunicorn En utilisant le service, encoder un symbole autre que ascii, Entièrement incorrect:

*

Mathématiques (de grec. ?????? m? Th? Ma,? Connaissance, étude, étude?)

*
Invité:

Blanche

Confirmation de:

Vos sessions de terminaux interactifs sont généralement automatiquement remplies de langues.

LC_ALL

et paramètres linguistiques

LC_LANG

et

LANG

Et de nombreux clients SSH Remplacez les paramètres du serveur par défaut, redirection de ces variables d'environnement de votre poste de travail.

Souvent, ils diffèrent des valeurs du système par défaut qui sont utilisées lorsque le démon commence comme un service à partir des scénarios de lancement. Rabotement

# export

Rangées dans le script de démarrage et remplissez le support avec des réglages appropriés.

Pour répondre aux questions, connectez-vous ou registre