zoukankan      html  css  js  c++  java
  • Django linux uWsgi Nginx 部署

    安装mysql-server   

    sudo apt-get install mysql-server

    登录mysql

     mysql -u root

    创建新的用户

     grant all on *.* to wlc@localhost identified by "123456";
    #修改密码
    set password for root@localhost=password('12345')

    最后刷入权限的改动

    flush privileges

    安装mysqlclient 遇到如下问题

    Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-rwo6actu/mysqlclient/
    #解决方案
    sudo apt-get install libmysqlclient-dev

    创建django项目修改setting文件添加mysql的配置 就可以正常启动django    python manager.py migrate      python manager.py runserver 0.0.0.0:8000

    查看正在使用的端口号:  netstat -ano

    将每次开机需要执行的命令放到:  /etc/rc.local

    安装监控工具:  pip install django-debug-toolbar

    在setting中的instal APP 里面添加: ‘debug_toolbar’,

    在中间件里边添加:debug_toolbar.middleware.DebugToolbarMiddleware

    查看django的path:  python -c"import django;print(django.__path__);"     结果:['/home/jupyter/wlc/env3.5/lib/python3.5/site-packages/django']

    打开该路径下的debug_toolbar的settingpy文件 添加js文件 自带的js是谷歌有可能加载不上:将里面的js换成: cdn.bootcss.com/jquery/2.2.4/jquery.js

    *********由于服务器之前有apache2 将其卸载以后使用ip访问直接显示apache的主页一直以为没有将Apache卸载完后来才发现其实是不管是apache还是nginx最终指向的页面html都在 /var/www/html/index.html 

    *********安装nginx以后里边多了index.nginx.debian.html页面 删除index页面启动nginx 然后访问80端口就显示的是nginx主页

    安装nginx  最好使用root账户

    安装 uwsgi pip install uwsgi

    uwsgi安装成功后 在站点根目录下添加一个ini文件 website.ini(使用 shift + insert)快捷键可以直接将windows下复制的内容直接黏贴到vim编辑的文件中

    # myweb_uwsgi.ini file
    [uwsgi]
    
    # Django-related settings
    
    socket = :8000
    
    # the base directory (full path)
    chdir           = /home/wlc/env3.5/djangoproject/website(站点根路径)
    
    # Django s wsgi file
    module          =website.wsgi
    
    # process-related settings
    # master
    master          = true
    
    # maximum number of worker processes
    processes       = 4
    
    # ... with appropriate permissions - may be needed
    # chmod-socket    = 664
    # clear environment on exit
    vacuum          = true   

    进入站点目录 cd /home/jupyter/wlc/env3.5/djangoTest/

    执行命令 uwsgi --ini djangoTest_uwsgi.ini  在该命令正在执行的前提下  此时是可以直接浏览器通过8000端口访问站点的 接下来添加nginx配置

    将如下配置添加到 /etc/nginx/nginx.conf 配置文件当中

    server {
        listen         8099; 
        server_name    127.0.0.1 
        charset UTF-8;
        access_log      /var/log/nginx/website_access.log;(存放访问日志)
        error_log       /var/log/nginx/website_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/XXXXXXXXXX/website/static/;(指定项目的静态文件位置 js image css 等)
         }
     }

    终止nginx
      /etc/init.d/nginx stop

    启动nginx

      /etc/init.d/nginx start

    在浏览器中访问 IP:8099(如果是局域网服务器则在路由器转发规则中添加8099端口转发)就可以显示配置的站点内容

    遇到502错误查看是否正在执行该命令 uwsgi --ini djangoTest_uwsgi.ini

    查看访问日志已经错误日志

      cat /var/log/nginx/website_access.log

      cat /var/log/nginx/website_error.log

  • 相关阅读:
    URAL 2046 A
    URAL 2056 Scholarship 水题
    Codeforces Gym 100286I iSharp 水题
    Codeforces Gym H. Hell on the Markets 贪心
    Codeforces Gym 100286G Giant Screen 水题
    Codeforces Gym 100286B Blind Walk DFS
    Codeforces Gym 100286F Problem F. Fibonacci System 数位DP
    Codeforces Gym 100286A. Aerodynamics 计算几何 求二维凸包面积
    Codeforces Gym 100418K Cards 暴力打表
    Codeforces Gym 100418J Lucky tickets 数位DP
  • 原文地址:https://www.cnblogs.com/wlc297984368/p/7778185.html
Copyright © 2011-2022 走看看