整理来源:https://www.django.cn/article/show-4.htmlhtml
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
yum update -y
yum -y groupinstall "Development tools" yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc
cd /usr/local
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
解压python
tar -zxvf Python-3.6.6.tgz
进入 Python-3.6.6路径linux
cd Python-3.6.6
编译安装到指定路径nginx
./configure --prefix=/usr/local/python3
注意:/usr/local/python3 路径能够本身指定,本身记着就行,下边要用到。web
安装python3sql
make make install
安装完成以后 创建软连接 添加变量 方便在终端中直接使用python3数据库
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3
Python3安装完成以后pip3也一块安装完成,不须要再单独安装
一样给pip3创建软连接django
ln -s /usr/local/python3/bin/pip3.6 /usr/bin/pip3
python3 pip3 -v
pip3 install virtualenv
创建软连接bash
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
安装成功在根目录下创建两个文件夹,主要用于存放env和网站文件的。(我的习惯,其它人可根据本身的实际状况处理)服务器
mkdir -p /data/env mkdir -p /data/wwwroot
/data/env/ virtualenv --python=/usr/bin/python3 pyweb
而后进入/data/env/pyweb/bin
启动虚拟环境:
cd /data/env/pyweb/bin source activate
右下角出现(pyweb),说明是成功进入虚拟环境。
pip3 install django==1.11.11 (指定安装和你项目相同的版本) pip3 install uwsgi
留意:uwsgi要安装两次,先在系统里安装一次,而后进入对应的虚拟环境安装一次。
给uwsgi创建软连接,方便使用
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
一、修改Django配置settings文件中ALLOWED_HOSTS,['*'],可让任何IP访问
一、在项目目录下用下面的命令把当前的环境依赖包导出到requirements.txt文件
pip freeze > requirements.txt
二、把项目源码压缩打包。上传到服务器对应的目录里,解压。
三、进入虚拟环境
cd /data/env/pyweb/bin source activate
四、进入项目路径安装requirements.txt里的依赖包。
pip3 install -r requirements.txt
五、经过python3 manage.py runserver 运行一下项目,若是能正常启动则进行下一步,不能正常运行往上检查。
咱们网站项目路径是 /data/wwwroot/mysite/,在项目根目录下建立
mysite.xml文件,输入以下内容:
<uwsgi> <socket>127.0.0.1:8997</socket> <!-- 内部端口,自定义 --> <chdir>/data/wwwroot/mysite/</chdir> <!-- 项目路径 --> <module>mysite.wsgi</module> <!-- mysite为wsgi.py所在目录名--> <processes>4</processes> <!-- 进程数 --> <daemonize>uwsgi.log</daemonize> <!-- 日志文件 --> </uwsgi>
保存
注意
进入home目录,执行下面命令
cd /home/
wget http://nginx.org/download/nginx-1.13.7.tar.gz
下载完成后,执行解压命令:
tar -zxvf nginx-1.13.7.tar.gz
进入解压后的nginx-1.13.7文件夹,依次执行如下命令:
./configure make make install
nginx通常默认安装好的路径为/usr/local/nginx
在/usr/local/nginx/conf/中先备份一下nginx.conf文件,以防意外。
cp nginx.conf nginx.conf.bak
而后打开nginx.conf,把原来的内容删除,直接加入如下内容:
events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; server { listen 80; server_name www.django.cn; #改成本身的域名,没域名修改成127.0.0.1:80 charset utf-8; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8997; #端口要和uwsgi里配置的同样 uwsgi_param UWSGI_SCRIPT mysite.wsgi; #wsgi.py所在的目录名+.wsgi uwsgi_param UWSGI_CHDIR /data/wwwroot/mysite/; #项目路径 } location /static/ { alias /data/wwwroot/mysite/static/; #静态资源路径 } } }
要留意备注的地方,要和UWSGI配置文件mysite.xml,还有项目路径对应上。
进入/usr/local/nginx/sbin/目录
执行./nginx -t命令先检查配置文件是否有错,没有错就执行如下命令:
./nginx
终端没有任何提示就证实nginx启动成功。可使用你的服务器地址查看,成功以后就会看到一个nginx欢迎页面。
以后,在settings.py里设置:
一、关闭DEBUG模式。
DEBUG = False
二、ALLOWED_HOSTS设置为* 表示任何IP均可以访问网站。
ALLOWED_HOSTS = ['*']
每次项目启动方式
cd /data/env/pyweb/bin 进入虚拟环境 source activate 启动虚拟环境 启动nginx cd /usr/local/nginx/sbin/ ./nginx 启动 ( mysite 为你本身的项目名 ) cd /data/wwwroot/mysite uwsgi -x mysite.xml 启动项目(建议使用下面的后台执行,80为项目端口) python3 manage.py runserver 0.0.0.0:80 在后台执行 (执行完之后须要用’exit‘正常退出Linux系统): nohup python manage.py runserver 0.0.0.0:80 2>log & ps -aux 查询全部后台程序 kill DIP # 结束后台
成功访问!
里面最值得留意的就是项目的路径不要弄错,还有,项目的全部操做都要在虚拟环境下进行。
环境部署部份,懒的话,直接复制个人代码直接部署就行。