打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
nginx + uwsgi + django + python 部署

研究了两天nginx和uwsgi今天终于搞定了




这里总结一下
安装什么的就不说了,重点说一下配置和注意的问题:
我的项目目录/home/charles/mysite/mysite
和项目目录平级的还有/home/charles/mysite/uwsgi
首先配置uwsgi,所有的uwsgi的配置都在/home/charles/mysite/uwsgi 目录中,查了很多文档



配置uwsgi:


1
2
3
4
首先新建一个uwsgi的配置文件, touch uwsgi.ini                            
然后新建  touch    django_wsgi.py                     
touch   uwsgi.log                        
touch  uwsgi.pid

uwsgi.ini是配置文件:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[uwsgi]
socket = :8000
master = true
#chdir = /home/charles/mysite/mysite
#module = mysite.wsgi
module = django_wsgi
processes = 8
listen = 120
enable-threads = true
daemonize = /home/charles/mysite/uwsgi/uwsgi.log
pidfile = /home/charles/mysite/uwsgi/uwsgi.pid
pythonpath = /home/charles/mysite
pythonpath = /home/charles/mysite/uwsgi
pythonpath = /home/charles/mysite/mysite
buffer-size =  32768
reload-mercy = 8
vacuum = true

django_wsgi.py


1
2
3
4
5
6
7
#!/usr/bin/python
import os,sys
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

这样uwsgi就配置完毕, uwsgi.log是log文件, uwsgi.pid是存储进程号的地方。
开起服务器: uwsgi –ini uwsgi.ini
这个时候是不好使地, 哈哈, 如果要看看效果, 需要把uwsgi.ini中的socket改为http这样访问127.0.0.1:8000就能看到网站了


继续。。。。。。。。
配置nginx, nginx自带了uwsgi_params, 我们要做的是在nginx把uwsgi_params的各种参数传到uwsgi中, 打开nginx的配置文件,加入:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
server {
    listen         80;
    server_name    127.0.0.1
    charset UTF-8;
    access_log      /var/log/nginx/test_access.log;
    error_log       /var/log/nginx/test_error.log;
    client_max_body_size 75M;
    location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8000;
        uwsgi_read_timeout 2;
    }  
    location /static {
        expires 30d;
        autoindex on;
        add_header Cache-Control private;
        alias /home/charles/mysite/mysite/mysite/static/;
     }
 }

这样就搞定了,可以访问127.0.0.1看看网站了, 我在这犯了一个错误,就是在uwsgi.ini中写的是http所以不好使,后来把http改为socket好使了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Django在Ubuntu14.04的部署
nginx + python + django
如何在uwsgi和nginx上部署Django项目?
uWSGI其三:uWSGI搭配Nginx使用
Django+uwsgi+nginx部署项目时遇到的静态资源404的问题。
大牛分享|如何用Django Uwsgi Nginx 实现生产环境部署
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服