Django,uwsgi,nginx简单配置

django_uwsgi_nginx

1 Django部署

django+uwsgi+nginx部署环境总结。http请求先到nginx,如果是静态页面,nginx直接获取静态页面返回结果;对于动态页面,则交给uwsgi进行处理,uwsgi再把消息转发给django。

1.1 uwsgi的部署

uwsgi的部署主要有这样几个参数:

参数名取值解释
socketip:port以socket形式侦听接收消息
httpip:port与socket选其一,http没有报大小限制,浏览器可直接访问
chdirdir切换当前目录,加载module使用
masterbool管理进程,其它进程重启等
enable-threadsnum线程个数
workersnum进程个数
virtualenvdir虚拟python工作目录
statsip:port状态,可以用telnet登录查看
envkey=val设置环境
modulestring加载模块应用app

更多参数说明

配置示例:

[uwsgi]
socket = 127.0.0.1:8077
chdir = /home/web/Env/blogenv/mezproj/project
pythonpath=..
env = DJANGO_SETTINGS_MODULE=settings
module = django.core.handlers.wsgi:WSGIHandler()
master = true
enable-threads = true
workers = 4
virtualenv = /home/web/Env/blogenv/mezproj/
stats = 127.0.0.1:9191

配置参考

1.2 nginx的部署

nginx基本命令

cmddesc
nginx -s stopstop fast
nginx -s quitstop gracefully
nginx -s reloadreloading config file
nginx -s reopenreopening the log file

nginx配置分为几个块,最常用的是http,server, location等一个http配置中可以拥有多个server, 一个server可以配置多个location一个请求到达nginx后,按照一定的匹配规则,找到最终的location。简单配置:

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
        worker_connections 768;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # Logging Settings
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Gzip Settings
        ##

        gzip on;
        gzip_disable "msie6";

        server {
            listen   80;
            server_name www.domain.com;
            access_log /home/web/mezproj_env/mezproj/project/static/logs/nginx_access.log;
            error_log /home/web/mezproj_env/mezproj/project/static/logs/nginx_error.log;
            #charset koi8-r;

            #access_log  logs/host.access.log  main;

            location / {
            include        uwsgi_params;
            uwsgi_pass     127.0.0.1:8077;
            }
            #error_page  404              /404.html;

            # redirect server error pages to the static page /50x.html
            #
            # error_page   500 502 503 504  /50x.html;
            # loation = /50x.html {
            # root   html;
            # }

            location /static/ {
            alias  /home/web/mezproj_env/mezproj/project/static/;
            index  index.html index.htm;
            }
            location /media/ {
            alias  /home/web/mezproj_env/mezproj/project/static/media/;
            }

        }


}

Author: ROBIN

Created: 2014-03-17 星期一 11:03

Emacs 24.3.1 (Org mode 8.2.1)

Validate

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值