nginx+uwsgi部署Django遇到了麻煩
問題描述
首先說明:電腦環(huán)境為Ubuntu 16.10,我使用conda管理開發(fā)環(huán)境 !!!
uwsgi使用conda install的pip安裝
uwsgi ini文件
# backend_uwsgi.ini file[uwsgi]# Django-related settings# the base directory (full path)chdir = /home/yangtz/developproject/backend# Django’s wsgi file# wsgi-file = /home/yangtz/developproject/backend/backend/wsgi.pymodule = backend.wsgi # process-related settings# mastermaster = true# maximum number of worker processesprocesses = 10# the socket (use the full path to be safesocket = /home/yangtz/developproject/backend/backend/backend.sock# ... with appropriate permissions - may be neededchmod-socket = 666# clear environment on exitvacuum = true# daemonize = /home/yangtz/developproject/backend/uwsgi.log
backend_nginx.conf
# the upstream component nginx needs to connect to upstream django {server unix:/home/yangtz/developproject/backend/backend/backend.sock; # for a file socket# server 127.0.0.1:8000; # for a web port socket (we’ll use this first) } # configuration of the server server {# the port your site will be served onlisten 80;# the domain name it will serve forserver_name 127.0.0.1; # substitute your machine’s IP address or FQDNcharset utf-8; access_log /home/yangtz/developproject/nginx_access.log;error_log /home/yangtz/developproject/nginx_error.log; # max upload sizeclient_max_body_size 75M; # adjust to taste # Django media# location /media {# alias /path/to/your/mysite/media; # your Django project’s media files - amend as required# } location /static { alias /home/yangtz/developproject/backend/static; # your Django project’s static files - amend as required} # Finally, send all non-media requests to the Django server.location / { uwsgi_pass django; include /etc/nginx/uwsgi_params; # the uwsgi_params file you installed} }
當(dāng)啟動(dòng) sudo uwsgi --ini backend_uwsgi.ini 后,結(jié)果卻是
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) *** chdir() to /home/yangtz/developproject/backendyour processes number limit is 63466your memory page size is 4096 bytesdetected max file descriptor number: 1024lock engine: pthread robust mutexesthunder lock: disabled (you can enable it with --thunder-lock)uwsgi socket 0 bound to UNIX address /home/yangtz/developproject/backend/backend/backend.sock fd 3your server socket listen backlog is limited to 100 connectionsyour mercy for graceful operations on workers is 60 secondsmapped 800448 bytes (781 KB) for 10 cores*** Operational MODE: preforking ****** no app loaded. going in full dynamic mode ****** uWSGI is running in multiple interpreter mode ***!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!no request plugin is loaded, you will not be able to manage requests.you may need to install the package for your language of choice, or simply load it with --plugin.!!!!!!!!!!! END OF WARNING !!!!!!!!!!spawned uWSGI master process (pid: 9293)spawned uWSGI worker 1 (pid: 9294, cores: 1)spawned uWSGI worker 2 (pid: 9295, cores: 1)spawned uWSGI worker 3 (pid: 9296, cores: 1)spawned uWSGI worker 4 (pid: 9297, cores: 1)spawned uWSGI worker 5 (pid: 9298, cores: 1)spawned uWSGI worker 6 (pid: 9299, cores: 1)spawned uWSGI worker 7 (pid: 9300, cores: 1)spawned uWSGI worker 8 (pid: 9301, cores: 1)spawned uWSGI worker 9 (pid: 9302, cores: 1)spawned uWSGI worker 10 (pid: 9303, cores: 1)
nginx界面是
我看到 其中 !!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!no request plugin is loaded, you will not be able to manage requests.you may need to install the package for your language of choice, or simply load it with --plugin.
于是加上 --plugin python3,得到結(jié)果卻是
Traceback (most recent call last): File './backend/wsgi.py', line 12, in <module>
from django.core.wsgi import get_wsgi_application
ImportError: No module named ’django’unable to load app 0 (mountpoint=’’) (callable not found or import error) no app loaded. going in full dynamic mode uWSGI is running in multiple interpreter mode
nginx界面變成
nginx刷新,uswgi那里有反應(yīng)。
怎么辦?求助大神解救。。。
問題解答
回答1:sudo uwsgi
你切換了環(huán)境。你的 Django 不是安裝在系統(tǒng)全局的。
如果你使用了 virtualenv 的話,你可以在 uwsgi 的配置中指定 virtualenv 的位置。
相關(guān)文章:
1. lucene - java web 現(xiàn)在做搜索功能,用什么比較好呢2. vue.js - npm run dev報(bào)錯(cuò)了,不知道是不是node.js或者npm installed的版本問題3. 求救一下,用新版的phpstudy,數(shù)據(jù)庫過段時(shí)間會(huì)消失是什么情況?4. PHP類屬性聲明?5. javascript - vue引入微信jssdk 配置在哪個(gè)生命周期調(diào)取接口配置?6. javascript - 這種效果是輪播的效果嗎??沒有思路,求解釋。謝謝大家7. objective-c - ios百度地圖定位問題8. 跟著課件一模一樣的操作使用tp6,出現(xiàn)了錯(cuò)誤9. php laravel框架模型作用域10. 在應(yīng)用配置文件 app.php 中找不到’route_check_cache’配置項(xiàng)
