Nginx项目部署Django

Nginx最大的优势就是收集静态资源

项目部署
第一步:在控制台输入:项目目录下(Qshop)pip freeze > pacakage.txt 生成模块包文件
第二步:修改配置,让项目进入生产模式
DEBUG = False 关闭调试模式 ,有可能看不到静态True
ALLOWED_HOSTS =[“*”] 允许所有IP访问
配置django-mysql
DATABASES = {
‘default’:{
‘ENGINE’:’django.db.backends.mysql’,
‘NAME’:’数据库名字’,
‘HOST’:’127.0.0.1’,
‘USER’:’root’,
‘PASSWORD’:’123456’
}
}
删除所有测试数据记录-----》migrations 目录下
在本地跑通后,
在服务器进行开发环境安装

  1. 安装依赖包 yum install zlib-devel bzip2-devel openssl-devel
  2. 下载python包 :wget:https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz
  3. 解压python包:[root@localhost opt] tar -Jxvf Python-3.5.2.tar.xz
  4. 进行编译(切入Python-3.5.2目录,python的安装包下)
  5. 去到cd /opt -----> ./configure prefix=/usr/local/python3 -----------》make && make install 编译安装python环境

创建python的软链接
6. cd /usr/local/python3/bin
7. ln -s /usr/local/python3/bin/python3 /usr/bin/python3 ---->python
8. ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 ---------->pip
9. 编译安装----》make 编译 make install 安装
10. make && make install
11. 如果缺少easy_install == >setuptools
12. 直接使用命令下载
13. easy_install -U setuptools
14. or
15. pip install ipython
16.

上传代码到服务器
在这里插入图片描述
环境迁移
cd 项目文件夹-----》pip3 install -r package.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

安装数据库

yum install mariadb 安装
yum install mariadb-server 启动服务
关闭防火墙:
systemctl stop firewalld 关闭防火墙
systemctl start firewalld 开启防火墙
systemctl status firewalld 查看状态

配置生产环境
mysql_secure_installation

创建项目的数据库:
create database qshop charset=utf8;

如果服务器需要部署在mysql下,必须安装
pip3 install pymysql
(collecting–>收集的意思)

在django项目下的__init__目录下写入
vim Qshop/init.py
内容:
import pymysql
pymysql.install_as_MySQLdb()
错误2:
mysql客户端版本问题报错:
在这里插入图片描述
复制此路径:
在这里插入图片描述
解决方法:进入—》
在这里插入图片描述
注释掉即可
在这里插入图片描述
python 版本问题
python2 版本,字符串拥有 decode和encode两个方法
但是在3版本,只有encode
在这里插入图片描述
在这里插入图片描述
通过vim进去 :复制上面圈起来的地址,把decode改成encode即可
在这里插入图片描述
执行迁移数据库命令
python3 manage.py check
python3 manage.py makemigrations
python3 manage.py migrate

启动django服务
python3 manage.py runserver 0.0.0.0:8000 启动django的服务
python3 manage.py runserver 0.0.0.0:80 启动http的服务 浏览器默认端口为80

安装 uwsgi
pip3 install uwsgi

创建软链接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
在opt下 创建目录 mkdir script
cd script/---------->vim uwsgi.ini ----》在linux下配置文件都是ini后缀

i=====输入模式
在这里插入图片描述
按下esc : wq 保存突出
uwsgi --ini uwsgi.ini
ls 查看 会生成这些文件
uwsgi.ini uwsgi.log uwsgi.pid uwsgi.sock

安装NGINX
在opt下安装,直接输入即可 :wget -c https://nginx.org/download/nginx-1.12.2.tar.gz
解压
opt----->tar -zxvf nginx-1.12.2.tar.gz

进入cd nginx-1.12.2/
进入./conf 会看到:conf ,configure
进入 ./configure \ 回车 + 回车

在这里插入图片描述
完成后便可编译安装make && make install
在这里插入图片描述
看到他就可以创建软链接
[目录sbin]# ln -s /usr/local//nginx/sbin/nginx /usr/bin/nginx

启动Nginx命令:nginx
在这里插入图片描述
在这里插入图片描述
修改配置文件:在/usr/local/nginx/conf
在这里插入图片描述
备份配置文件,以防出错,随时复原:cp nginx.conf nginx.conf.bak (移除命令是mv)

在这里插入图片描述
所有配置文件都在/usr/local/nginx/conf下
输入命令vim nginx.conf
解开注释(日志的格式)

在这里插入图片描述
配置服务 项目的配置,监听80 服务名qshop 必须按照此配置
在这里插入图片描述
配置静态文件,在error page 500 502 504 /50x.html下找
在这里插入图片描述
配置错误日志文件,nginx本没有此文件,手动创建
在这里插入图片描述
启动项目,先杀掉进程 ,pkill -9 nginx ,pkill -9 uwsgi, uwsgi --ini uwsgi.ini, 启动nginx
在这里插入图片描述

发布了19 篇原创文章 · 获赞 0 · 访问量 208

猜你喜欢

转载自blog.csdn.net/caiweijiancsdn/article/details/104619707