• django+uwsgi+nginx


    配置之前,首先了解uwsgi以及nginx的配置参数,这里就不多叙述,直接开始配置

    以ubuntu为例,首先确保你的ubuntu系统执行python manage.py runserver 运行成功。

    安装uwsgi

    uwsgi是python 的一个模块,安装时需要注意的时你的项目环境时py2还是py3

    pip install uwsgi //python2
    pip3 install uwsgi //python3
    

    安装成功使用uwsgi启动django项目

    首先使用命令测试

    创建data目录,将我的cmdb放到data目录下,如图

    使用命令启动

    uwsgi --http 192.168.11.179:8080 --file cmdb/wsgi.py --static-map=/static=static

    参数说明

    • http 这个就和runserver一样指定IP 端口
    • file 这个文件就里有一个反射,如果你在调用他的时候没有指定Web Server就使用默认的
    • static 做一个映射,指定静态文件,如css等文件

    此时打开浏览器输入http://192.168.11.179:8080即可访问成功

    启动成功之后,可以尝试使用uwsgi配置文件启动,

    uwsgi配置文件

    我的项目中脚本名称mysite_uwsgi.ini

    [uwsgi]
    # 项目目录
    chdir=/data/cmdb  # 路径根据你的项目的真实路径填写
    # 指定项目的application
    module=mysite.wsgi
    # 指定sock的文件路径       
    socket=/opt/proj/script/uwsgi.sock # 根据情况填写,不写也不影响
    # 进程个数       
    workers=5
    pidfile=/data/uwsgi.pid  # 保存的pip目录,建议和项目同级目录
    # 指定IP端口,根据情况选择http or socket,一般选择socket
    # http=192.168.11.179:8080
    socket      = 192.168.11.179:8080 
    # 指定静态文件
    static-map=/static=/data/cmdb/static
    # 启用主进程
    master=true
    # 自动移除unix Socket和pid文件当服务停止的时候
    vacuum=true
    # 序列化接受的内容,如果可能的话
    thunder-lock=true
    # 启用线程
    enable-threads=true
    # 设置自中断时间
    harakiri=30
    # 设置缓冲
    post-buffering=4096
    # 设置日志目录
    daemonize=/data/uwsgi.log   # 根据实际项目路径填写
    

    启动脚本

    /usr/local/bin/uwsgi --ini  mysite_uwsgi.ini  # 一般环境不同,此时的uwsgi的路径也会不同
    

    浏览器访问 192.168.11.179:8080,成功即配置成功

    安装nginx

    apt-get install nginx
    

    启动nginx,验证是否成功

    /etc/init.d/nginx start 
    或者
    service nginx start
    

     详细配置就不再多叙述

    最后开始配合使用

    Django+uwsgi+nginx  

    在nginx的默认配置目录/etc/nginx/conf.d 添加cmdb.conf

    server {
            listen 8000;  # 根据自己爱好设置端口,访问的时候使用 
            server_name cmdb.com;
            access_log /var/log/nginx/access.log main; # Nginx日志配置
            proxy_buffer_size 64k;
            proxy_buffers   32 32k;
            proxy_busy_buffers_size 128k;
    
            location /static {
                alias /data/cmdb/static;
            }
            location / {
                    include uwsgi_params;
                    uwsgi_pass 192.168.11.179:8080;
            }
    
    }
    

    重启nginx

    /etc/init.d/nginx restart
    
    启动后可使用 nginx -t 查看是否成功
    

     浏览器输入192.168.11.179:8000 (需要注意的是此时的端口是你的cmdb.conf 中监听的端口,和你的命令启动的8080端口不一样)

    现实成功,即配置成功

      

  • 相关阅读:
    Django前后端分离项目部署
    python虚拟环境设置
    pandas高级操作
    Auth模块
    Django中间件
    CSRF(Cross-site request forgery)跨站请求伪造
    cookie与session组件
    创建多对多表关系的三种方式
    form组件
    python2和python3的区别
  • 原文地址:https://www.cnblogs.com/flash55/p/10073572.html
Copyright © 2020-2023  润新知