美文网首页我爱编程
Django部署 阿里云Ubuntu uwsgi+nginx

Django部署 阿里云Ubuntu uwsgi+nginx

作者: 并亲了你一下嘀嗒嘀 | 来源:发表于2018-05-22 23:14 被阅读0次

    更新Ubuntu软件包:

    apt update

    升级Ubuntu软件包:

    apt upgrade

    安装pip3:

    apt-get install python3-pip

    升级pip3:

    pip3 install --upgrade pip

    查看pip版本(本教程Python版本:3.5):

    pip -V

    安装Django2.0:

    pip install django==2.0

    安装UWSGI:

    pip install uwsgi

    安装Nginx:

    apt install nginx

    打开浏览器,输入服务器的公网IP,显示下面页面表示安装Nginx成功:
    • Nginx常用命令:
    /etc/init.d/nginx start     运行
    /etc/init.d/nginx stop      结束
    /etc/init.d/nginx restart   重启
    

    设置Django文件中的setting文件:

    • 找到DEBUG和ALLOWED_HOSTS变量修改成如下图:

    安装Python3.5的虚拟环境:

    • 先安装Venv :
      • apt-get install python3-venv
    • 创建虚拟环境文件夹(创建在哪里都行,自己决定):
      • cd /var/www/
      • mkdir sitevenv3
    • 进入虚拟文件夹创建Python3虚拟环境:

    cd sitevenv3

    python3 -m venv .

    • 在虚拟文件夹的根目录下,执行下面命令可以进入虚拟环境:

      source sitevenv3/bin/activate

    看到命令行前面有个括号括住文件夹就说明已经进入了虚拟环境。

    • 在虚拟环境内安装Django和uwsgi

      pip install django==2.0

      pip install uwsgi

    Xftp将Django项目文件夹传到虚拟环境文件夹同一目录下:

    • 我的项目文件夹名字是:my_website

    测试Django项目是否能够运行:

    python manage.py runserver 0:8000

    • 显示上面内容就可以访问公网IP的8000端口查看是否成功,如果返回项目页面,说明成功。有的人服务器没有开8000端口,要自己去服务器的防火墙那里设置开启端口。

    测试uwsgi

    uwsgi --http :8000 --module my_website.wsgi

    • 运行成功之后,访问公网IP的8000端口,返回Django项目页面,说明uwsgi正常(因为没有设置uwsgi的配置文件,会看不到网页的CSS效果)

    配置uwsginginx的配置文件:

    • 新建uwsgi.ini(放在项目文件夹同一目录下)

      vim uwsgi.ini

    输入的内容如下,自行修改

    • 新建nginx.conf(放在项目文件夹同一目录下)

      vim nginx.conf

    输入的内容如下,自行修改(只要修改有注释后面的路径)

    • 删除nginx的default文件:

      rm /etc/nginx/sites-enabled/default

    • 创建新的nginx.conf的软链接:

      ln -s /var/www/nginx.conf /etc/nginx/sites-enabled/nginx

    • 重启ngixn

      /etc/init.d/nginx restart

    启动uwsgi.ini配置文件

    uwsgi --ini uwsgi.ini


    这样我们的Django项目就部署完成了。

    相关文章

      网友评论

        本文标题:Django部署 阿里云Ubuntu uwsgi+nginx

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