zoukankan      html  css  js  c++  java
  • Django部署,Django+uWSGI+nginx+Centos部署

    说明:系统是在windows上开发的,使用django1.11.4+python3.6.3开发,需要部署在centos6.4服务器上。

    第一步:在Centos6.4上安装Python3.6.2

    安装请在root用户下。

    此处参照TaoBeier在51CTO上发表的“在CentOS 7上安装并配置Python 3.6环境”,以下代码详细解释请参看上述文章。

    #!/bin/bash
    # author: TaoBeier
    yum -y install wget gcc make  zlib-devel readline-devel  bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel
    wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
    xz -d Python-3.6.2.tar.xz
    tar -xvf Python-3.6.2.tar
    cd Python-3.6.2
    ./configure --prefix=/usr/local/python3.6 --enable-optimizations
    make
    make install
    ln -s /usr/local/python3.6/bin/python3 /usr/bin/python3

    python3.6.2安装好之后,创建虚拟环境。

    ➜ python3 -m venv py3 
     
    ➜ source py3/bin/activate 
     
    (py3) ➜ python -V 
     
    Python 3.6.2 

    进入虚拟环境使用pip安装需要的包。此处说明:开发的系统使用到Mysql数据库,而pip install mysqlclient报错,无法安装成功,所有换用pymysql,使用pymsql需要在项目下的__init__.py文件中添加如下内容:

    import pymysql
    pymysql.install_as_MySQLdb()

    因为开发中使用的是sqlite3数据库,而生产要求使用mysql,期间就牵扯到数据库从sqlite3向mysql迁移的问题,本文重点讲生产环境的配置,就不详细展开说数据迁移的问题了,期间也是遇到了好多坑。

    第二步:安装PhantomJS

    因为系统使用到PhantomJS无界面浏览器,需要配置。可以参考文章“Linux/Centos下安装部署phantomjs 及使用”。

    一.安装:
      获取安装包,示例安装到/bin/文件夹中,具体可自行修改,并解压:
     #mkdir ~/bin/
     #cd ~/bin/
     #wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
     #tar -xjvf phantomjs-2.1.1-linux-x86_64.tar.bz2
    
    将可执行文件放入系统路径: 
     #sudo ln -s ~/bin/phantomjs-2.1.1-linux-x86_64/bin/phantomjs /usr/local/bin/phantomjs

    第三步:安装uWSGI

    参看官方文档

    第四步骤:安装nginx

    修改nginx.conf,用户为root用户。因为nginx上部署的还有其他项目,是其他linux用户,所以给nginx用户设置为root。

    修改配置文件后使用:nginx -s reload命令重新加载配置文件。

     备注:

    期间部署nginx和uwsgi后遇到502错误,后来发现是因为uwsgi配置的问题,重新配置uwsgi后解决。

     

  • 相关阅读:
    java9
    java8
    java7
    java6
    java5
    java4
    java-list-分组
    Termux中安装gcc-7/gfortran-7实操过程,安装成功可以编译Fortran,c/c++
    安卓手机牛逼软件Termux中安装Archlinux,安装Jdk
    c++语言的组合类的使用,用组合类的方法计算两点间距离。
  • 原文地址:https://www.cnblogs.com/tianrunzhi/p/7525827.html
Copyright © 2011-2022 走看看