Ich habe versucht, mit Django eine App zu erstellen und sie schließlich zu veröffentlichen
sudo /usr/local/bin/uwsgi --ini myapp_uwsgi.ini --uid nginx --gid nginx
Wenn Sie den Befehl drücken
Set PythonHome to /home/uesrname/.virtualenvs/virtualenvname
ImportError: No module named site
Ich erhalte eine Fehlermeldung und es funktioniert nicht. Was für ein Chaos.
myapp_uwsgi.ini sieht so aus
myapp_uwsgi.ini
# myapp_uwsgi.ini file
[uwsgi]
# Django-related settings
# the base directory (full path)
chdir = /var/www/myapp
# Django's wsgi file
module = myapp.wsgi
# the virtualenv (full path)
#home = /usr/local/bin/virtualenv
home = /home/username/.virtualenvs/virtualenvname
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 10
# the socket (use the full path to be safe
socket = /tmp/myapp.sock
# ... with appropriate permissions - may be needed
chmod-socket = 666
# clear environment on exit
vacuum = true
Übrigens ohne Sudo
/usr/local/bin/uwsgi --ini myapp_uwsgi.ini --uid nginx --gid nginx
Wenn ja, funktionierte es ohne Probleme, so dass sich das Rätsel nur vertiefte. Das Betriebssystem ist übrigens CentOS 6.9.
Es schien ein Berechtigungsproblem zu sein und es funktionierte, als ich die Berechtigungen für / home / username von 700 auf 755 änderte. Ich bin mir nicht sicher, warum es nicht funktioniert, obwohl es Sudo ist. Handelt es sich um eine Linux-Kernel-Berechtigung oder ein Problem mit Anmeldeinformationen?
Der gleiche Fehler, kein Modul mit dem Namen site, scheint verschiedene Symptome zu haben, und ich konnte keine genaue Lösung finden. Wenn es jemandem hilft.
Recommended Posts