Django+Uwsgi+Nginx 配置流程

1.安装Django pip install django
2.安装Uwsgi (1).sudo apt-get install python-dev (2).pip install uwsgi
3.安装Nginx sudo apt-get install Nginx

启动、停止和重启
sudo /etc/init.d/nginx start
sudo /etc/init.d/nginx stop
sudo /etc/init.d/nginx restart
或者

sudo service nginx start
sudo service nginx stop
sudo service nginx restart
4.保证django 正常运行测试:
python manage.py runserver
5.保证uwsgi 正常运行测试
(1).vim test.py

(2).

1 def application(env, start_response):
2 start_response('200 OK', [('Content-Type','text/html')])
3 return ["Hello World"] # python2
4 #return [b"Hello World"] # python3
View Code

 


(3).uwsgi --http :8000 --wsgi-file test.py
【如果上面的语句报错,可以尝试uwsgi --http-socket :8001 --plugin python --wsgi-file test.py】
(4).访问浏览器,127.0.0.1:8000 正常返回hello world 即为成功
6.配置Nginx
(1). vim /etc/nginx/sites-enabled/default
(2).

server {
# the port your site will be served on
listen 8081;#此处为以后浏览器访问的地址
# the domain name it will serve for
server_name 127.0.0.1; # substitute your machine's IP address or FQDN
charset utf-8;

# max upload size
client_max_body_size 75M; # adjust to taste

# Django media
location /media {
alias /home/ubuntu/blog/media; # your Django project's media files - amend as required
}

location /static {
alias /home/ubuntu/blog/static; # your Django project's static files - amend as required
}#此处路径为绝对路径,注意反斜杠,找了两个小时的元凶

# Finally, send all non-media requests to the Django server.
location / {
include uwsgi_params; # the uwsgi_params file you installed
uwsgi_pass 127.0.0.1:8000;#此处为前面配置的uwsgi地址
}
}
Nginx 配置信息

 

(3).sudo service nginx restart 重启nginx服务
(4).浏览器访问127.0.0.1:8081 查看是否能看到nginx欢迎界面
7.配置django项目下的wsgi.ini文件

[uwsgi]
virtualenv = /home/wbc/Documents/virtualenv/env2.7
http-socket = 0.0.0.0:9100
socket = 0.0.0.0:9101
stats = /tmp/gezi_stats.socket
wsgi-file = gezi/wsgi.py
master = true
# processes = 1
enable-threads = true
buffer-size = 65535
pidfile = /tmp/gezi_wsgi.pid
# log-x-forwarded-for = true
uid = ubuntu
gid = ubuntu
master-as-root = true
max-fd = 50000
processes = 5
threads = 5
# #daemonize = 127.0.0.1:9102
# log-maxsize = 10000000
# #logger = file:/home/ubuntu/data/uwsgi/gezi-@(exec://date +%%Y-%%m-%%d).log
# #logger = rsyslog:172.16.10.201:514,local7
# logger = socket:127.0.0.1:9102
# daemonize = /dev/null
chdir=/home/wbc/Documents/code/backend/projects/gezi/
module=gezi.wsgi
vacuum=true
plugins=python
Uwsgi配置信息

 


8.正式启动uwsgi
uwsgi --ini wsgi.ini
9.重启Nginx服务

 

posted on 2018-04-20 14:37  Imindy  阅读(87)  评论(0)    收藏  举报

导航