centos6.8_64部署django项目

一、用SecureCRT登录云服务器,并输入命令控制云服务器

二、安装python并升级版本(系统默认的是python2.6)

1、安装python2.7

    yum install -y update # 更新内置程序
    yum groupinstall -y development # 安装所需的development tools
    yum install -y zlib-dev openssl-devel sqlite-devel bzip2-devel # 安装附加包
    yum install xz-libs # 安装XZ解压库(可选)
    wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz # 下载源码包
    # 解压源码包,分为两步
    xz -d Python-2.7.6.tar.xz
    tar -xvf Python-2.7.6.tar
    # 编译与安装,先进入源码目录
    cd Python-2.7.6
    ./configure --prefix=/usr/local
    make && make install

2、由于系统默认的是python2.6,需要切换到python2.7,修改软连接

        执行以下命令,对Python2.6进行备份,然后为Python2.7创建软链接
        mv /usr/bin/python /usr/bin/python2.6.6
        ln -s /usr/local/bin/python2.7 /usr/bin/python

3、对yum的配置进行修改,如果不进行这一步操作的话,执行yum命令将会提示你Python的版本不对

        编辑/usr/bin/yum,将第一行的#!/usr/bin/python修改成#!/usr/bin/python2.6

        如果你用命令不熟悉,可以用WinSCP登录云服务器,在usr/bin文件夹下找到yun文件,将它拖到桌面,然后打开编辑,编辑完保存,又将它拖到原来的地方覆盖原文件

4、安装setuptools

   wget https://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
        tar zxf setuptools-0.6c11.tar.gz
        cd setuptools-0.6c11/
        python setup.py build
        python setup.py install

5、安装pip

  wget https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz --no-check-certificate    
        tar -xzvf pip-1.3.1.tar.gz
        cd pip-1.3.1
        python setup.py install

6、安装需要的django库及第三方库

1)安装django

  pip install django

2)安装Pillow5.0(需要特别注意)

  安装依懒库:yum install libjpeg-turbo-devel
    下载源码,运行setup.py,或者pip install Pillow

3)安装M2Crypto

  1.升级swig版本,因为旧版缺少-builtin选项

    先安装PCRE
    yum search pcre
    yum install pcre-devel.x86_64(根据搜索结果自己选)

             安装swing

    wget -O swig-3.0.7.tar.gz http://prdownloads.sourceforge.net/swig/swig-3.0.7.tar.gz
    tar zxf swig-3.0.7.tar.gz
    cd swig-3.0.7
.    /configure --prefix=/usr
    make && make install

  2.安装typing: pip install typing

  3.去下载https://pypi.python.org/官网下载最新的M2Crypto(0.27.0或者0.29.0)源码,运行setup.py

7、用nginx和uwsgi部署

  安装nginx:
    wget http://nginx.org/download/nginx-1.5.6.tar.gz
    tar zxf nginx-1.5.6.tar.gz
    cd nginx-1.5.6
    ./configure --prefix=/usr/local/nginx-1.5.6
    make && make install

       安装uwsgi:

    pip install uwsgi
    uwsgi --version    # 查看 uwsgi 版本

8、在/ect/目录下新建uwsgi9090.ini,添加如下配置:

[uwsgi]
socket = 127.0.0.1:9090  //在nginx保持一致
master = true         //主进程
vhost = true          //多站模式
no-site = true        //多站模式时不设置入口模块和文件
workers = 2           //子进程数
reload-mercy = 10     
vacuum = true         //退出、重启时清理文件
max-requests = 1000   
limit-as = 512
buffer-size = 30000
chdir=/root/mainblog    //项目目录
pythonpath=/root/mainblog   //项目路径
module=mainblog.wsgi   //"."表示上一级,wsgi.py文件路径

9、找到nginx的安装目录(如:/usr/local/nginx-1.5.6/),打开conf/nginx.conf文件,修改server配置:

server {
        listen       80;
        server_name  localhost;
        
        location /static {  #访问静态文件
            autoindex on;
            alias /root/mainblog/static;
        }
        
        location / {            
            include  uwsgi_params;
            uwsgi_pass  127.0.0.1:9090;              #必须和uwsgi中的设置一致
            uwsgi_param UWSGI_SCRIPT mainblog.wsgi;  #入口文件,即wsgi.py相对于项目根目录的位置,“.”相当于一层目录
            uwsgi_param UWSGI_CHDIR /mainblog;       #项目根目录
            index  index.html index.htm;
            client_max_body_size 35m;
        }
        
        
    }

10、若你的项目部署在root目录下,必须要修改它的权限以及他下面子目录的权限:

  1)点击root,在弹出的菜单中选择属性,全勾选,修改为最高权限777;

  2)chmod -R 777  项目目录(如:mainblog)

11、运行项目:

  uwsgi --ini /etc/uwsgi9090.ini &/usr/local/nginx-1.5.6/sbin/nginx

原文地址:https://www.cnblogs.com/yizhenfeng168/p/8529784.html