美文网首页
7.项目部署

7.项目部署

作者: 小爆虾丶 | 来源:发表于2017-12-16 23:42 被阅读0次

    网站部署流程图

    image.png

    1.uwsgi

    • 遵循wsgi协议的web服务器
    • pip install uswgi

    2. uwsgi配置

    项目部署时,需要把settings.py文件夹下的:
    DEBUG=FALSE
    ALLOWED_HOSTS=[‘*’] 
    
    [uwsgi]
    #使用nginx连接时使用
    #socket=127.0.0.1:8080
    #直接做web服务器使用
    http=127.0.0.1:8080
    #项目目录
    chdir=/Users/xiaobaoxia/Desktop/test/dailyfresh
    #项目中wsgi.py文件的目录,相对于项目目录
    wsgi-file=dailyfresh/wsgi.py
    processes=4
    threads=2
    master=True
    pidfile=uwsgi.pid
    daemonize=uwsgi.log
    virtualenv=/Users/xiaobaoxia/.virtualenvs/dailyfresh
    

    3. uwsgi启动停止命令

    • 启动:uwsgi –-ini 配置文件路径 例如:uwsgi –-ini uwsgi.ini
    • 停止:uwsgi --stop uwsgi.pid路径 例如:uwsgi –-stop uwsgi.pid

    4. nginx

    • nginx 配置转发请求给uwsgi

    location / {
    include uwsgi_params;
    uwsgi_pass uwsgi服务器的ip:port;
    }

    • nginx配置处理静态文件

    django settings.py中配置收集静态文件路径:
    STATIC_ROOT=收集的静态文件路径 例如:/var/www/dailyfresh/static;

    django 收集静态文件的命令:
    python manage.py collectstatic
    执行上面的命令会把项目中所使用的静态文件收集到STATIC_ROOT指定的目录下。

    收集完静态文件之后,让nginx提供静态文件,需要在nginx配置文件中增加如下配置:
    location /static {
    alias /var/www/dailyfresh/static/;
    }

    • nginx转发请求给另外地址

    在location 对应的配置项中增加 proxy_pass 转发的服务器地址。
    如当用户访问127.0.0.1时,在nginx中配置把这个请求转发给172.16.179.131:80(nginx)服务器,让这台服务器提供静态首页。
    配置如下:
    location = /{
    proxy_pass http://172.16.179.131;
    }

    • nginx配置upstream实现负载均衡

    ngnix 配置负载均衡时,在server配置的前面增加upstream配置项。
    upstream dailyfresh {
    server 127.0.0.1:8080;
    server 127.0.0.1:8081;
    }

    相关文章

      网友评论

          本文标题:7.项目部署

          本文链接:https://www.haomeiwen.com/subject/upnewxtx.html