Nginx
Nginx & uWSGI: ImportError: No module named site
我收到一個錯誤:
ImportError: No module named site
根據我的 uWSGI 日誌。test_proj.ini:
[uwsgi] chdir = /home/%n/app module = %n.wsgi home = /home/%n/app/venv master = true processes = 10 chmod-socket = 664 socket = /home/%n/uwsgi/socket daemonize = /home/%n/uwsgi/log pidfile = /home/%n/uwsgi/pid
nginx:
server { listen 8888; server_name 192.168.88.187; # Set up django static file serving location /static { alias /home/test_proj/app/static/; } # pass all non-static request to uWSGI location / { uwsgi_pass unix:///home/test_proj/uwsgi/socket; include uwsgi_params; } }
點凍結:
Django==1.7.1 django-braces==1.4.0 django-cors-headers==0.13 django-dynamic-settings==1.1.0 django-oauth-toolkit==0.7.2 django-uuidfield==0.5.0 djangorestframework==3.0.0 oauthlib==0.7.2 psycopg2==2.5.4 six==1.8.0
我還全域安裝了 uWSGI。我是在
ini
文件中遺漏了什麼,還是因為我的 nginx 設置?我嘗試了ini
文件的不同組合。我也嘗試
no-site = true
在其中添加,ini
但我了解到ini
即使它消除了錯誤並產生了不同的錯誤,也不應該將它添加到文件中。我也遵循了本*教程*,但仍然沒有運氣。
謝謝。
它不起作用的原因是因為我
uwsgi
使用正常pip
命令安裝。由於我的機器中同時安裝了 Python 2 和 3,因此我需要uwsgi
使用pip3
.我執行的命令:
pip3 install uwsgi
您收到此錯誤的原因是在 home 指令中指定的虛擬環境中找不到模組(站點、作業系統等)。使用正確版本的 pip 可能對您有用,但這只是因為它修復了您的 virtualenv 問題。