美文网首页
Django第三方—实现本地部署

Django第三方—实现本地部署

作者: Taoqi思 | 来源:发表于2018-12-08 22:36 被阅读0次

    第一步:

    1.打开MuzhuangBlog/settings.py文件。
    DEBUG = False
    ALLOW_HOSTS=['*',]
    
    部署第一步.png

    第二步:

    2.在项目下创建配置文件uwsgi.ini(.ini都属于配置文件) *路径一定要正确 ! ! !*

    uwsgi配置:
    [uwsgi]
    # Django-related settings
    http = 127.0.0.1:8000
    #socket = 127.0.0.1:8000
    chdir = /Users/xiaoyuan/Desktop/1807projects/MyBlog
    module = MyBlog.wsgi
    master = true
    processes = 4
    threads = 2
    daemonize = uwsgi.log
    pidfile = uwsgi.pid
    virtualenv = /Users/xiaoyuan/.virtualenvs/1807_blog

    uwsgi配置.png
    uwsgi .loguwsgi.pid是我后面配置过的。暂时不要管这两个,有uwsgi.ini就可以了!

    第三步:

    3.安装uwsgi

    pip install uwsgi
    安装过后用pip freeze查看一下是否安装成功

    安装uwsgi.png

    第四步:

    4.启动uwsgi

    启动命令

    uwsgi --ini uwsgi.ini 
    

    查看是否启动,搜索进程

    ps -ef |grep uwsgi
    
    启动命令查看进程.png

    这个时候看一下uwsgi.ini下出现了两个文件
    uwsgi.log 代表启动的进程
    uwsgi.pid 代表启动的主进程号

    第五步:

    启动后css样式都显示不出来
    (如果有显示就清楚一下浏览器,浏览器
    有记忆性。)


    启动.png

    第六步:

    使用 nginx
    如果你是ubuntu系统,直接打开终端

    sudo apt install nginx
    
    安装nginx.png

    路径:ubuntu下的nginx在 /etc/nginx

    第七步:

    进入nginx路径下有个nginx.conf配置文件
    sudo vi nginx.conf前加"sudo",如果不加sudo你就没有读写权限。
    找到http在http里配置
    写到http括号下
    这个时候静态先不要打开

        server {
                  listen 80;
                  server_name locahost;
         
                  #动态请求
                  location / {
                      include uwsgi_params;
                      uwsgi_pass 127.0.0.1:8000;
                  }
                  #静态
                 #location /static {
                 #alias /Users/xiaoyuan/Desktop/py_projects/MyBlog/static ;
         
                  }
            }
    
    配置文件.png

    关闭重启!!!
    关闭所有进程 killall -9 nginx
    查看是否还有进程 ps -ef | grep nginx
    重启nginx /etc/init.d/nginx start
    如果你要使用nginx 打开nginx.ini 打开

    socaket = 127.0.0.1:8000
    

    修改过后重启nginx

    配置uwsgi.png

    ————完成后通过127.0.0.1进入网页面可以看到没有css样式的东西

    当我们css样式出不来的时候我们应该想到的是静态上的问题,接下来我们来解决一下静态的问题

    第八步:

    把所有的静态资源收集到setting里面
    打开静态资源的时候一定要把上边的静态注调

    收集静态资源:
    STATIC_ROOT = os.path.join(BASE_DIR, 'static/')
    
    收集静态资源.png

    第九步:

    输入这条命令:

    python3 manage.py collectstatic 
    

    中途碰到选择选择"yes"
    收集后static下多了admin和ckeditor


    collectstatic_命令 .png

    第十步:

    进入nginx.conf 配置静态


    配置静态.png

    重启nginx和uwsgi! ! !

    uwsgi:
    uwsgi --ini uwsgi.ini--- 启动
    uwsgi --stop uwsgi.pid 关闭或 killall -9 uwsgi

    nginx
    killall -9 nginx --- 关闭所有进程
    ps -ef | grep nginx ---查看是否还有进程
    /etc/init.d/nginx start ---重启nginx

    相关文章

      网友评论

          本文标题:Django第三方—实现本地部署

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