详见:https://blog.csdn.net/u012145252/article/details/82147440
一.nginx部署
1.安装nginx
nginx版本检查:yum install nginx -y
2.安装python3:
下载:
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
解压:
tar -zxvf Python-3.7.3.tgz
建立一个空文件夹,用于存放python3程序
mkdir /data/lusong/python3
执行配置文件,编译,编译安装
cd Python-3.7.3
./configure --prefix=/data/lusong/python3
make && make install
建立软连接
ln -s /data/lusong/python3/bin/python3.7 /usr/bin/python3
ln -s /data/lusong/python3/bin/pip3.7 /usr/bin/pip3
是否安装成功
python3
修改pip安装清华源:
pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip升级:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
3.安装uwsgi
pip3 install uwsgi
创建软连接:
ln -s /data/lusong/python3/bin/uwsgi /usr/bin/uwsgi
修改nginx
nginx地址:
/usr/local/nginx/nginx-1.13.11/sbin/nginx
nginx配置地址:
/usr/local/nginx/nginx-1.13.11/conf/nginx.conf
uwsgi.ini配置地址:
/data/lusong/ydcspt/uwsgi.ini
安装django
pip3 install Django==2.2.2
打包库文件
pip freeze >req.txt
安装库文件
pip3 install –r req.txt
启动django项目
cd /data/lusong/ydcspt
python3 manage.py runserver 0.0.0.0:8000
关闭xshell不关闭服务的方法但是看不到日志
sudo nohup python3 manage.py runserver 0.0.0.0:8000 &
关闭服务的方法
1、将原命令语句改为:nohup 命令语句 &
2、回车执行,再回车,窗口中会显示一个进程号
3、如果中途想关闭,可执行:kill -9 进程号。如果想查看命令执行情况,可执行:cat nohup.out
查看进程ps -ef | grep
kill -9 进程号
uwsgi --http :8000 --module ydcs.wsgi
数据库配置
修改mange.py
执行数据迁移
python3 manage.py makemigrations
python3 manage.py migrate
shell常用操作:
vi里使用搜索:
1、命令模式下输入“/字符串”,例如“/Section 3”。
2、如果查找下一个,按“n”即可。
uwsgi --http :8000 --module ydcspt.wsgi
创建nginx配置的软连接
sudo ln -s /data/lusong/ydcspt/nginx.conf ydcept_nginx.conf
nginx配置位置:
/usr/local/nginx/conf
nginx重载方法:
cd /usr/local/nginx/sbin
./nginx
重载nginx
sudo /usr/sbin/nginx -s reload
开启uwsgi
cd /data/lusong/ydcspt
uwsgi --http :9090 --module ydcs.wsgi
sudo nohup uwsgi --socket :9090 --module ydcs.wsgi &
查看进程ps -ef | grep
kill -9 进程号
最新服务器部署Django方法整理
- 在本地调试好程序。setting.py中要修改数据库为生产服务器,debug改为False
- 使用Xshell登录服务器
- 使用命令:ps -ef |grep uwsgi查询网站进程
- 使用命令:kill -9 进程号 kill之前查询到的网站进程
- 进入目录/data/lusong,将文件ydcspt重命名
- 打开Xshell文件传输窗口,将本地项目文件(ydcspt)上传到/data/lusong
- 服务器进入项目目录,cd ydcspt
- 使用命令:uwsgi --socket :9090 --module ydcs.wsgi在前台显示的运行项目,查看项目运行日志
- 访问网址:http://iptv-test.ihou.com:5053/index/检查新加功能的正确性
- 功能无问题后使用ctrl+c关闭项目,使用 命令sudo nohup uwsgi --socket :9090 --module ydcs.wsgi &后台启动项目。结束
部署常见问题说明
- 项目地址错误,如项目根目录是ydcspt,不能是ydcs。写错会加载不到python应用
- 新增功能可能需要使用manage.py的管理命令添加数据库,收集静态文件目录
- 需要修改setting.py中要修改数据库为生产服务器,debug改为False
- 启动服务时端口号被占用,用ps -ef|grep +端口号查询进程号,然后kill掉
服务器部署静态文件逻辑梳理
一、服务器端与本地端静态文件加载区别
- 本地直接有django分配
- 服务器由nginx.conf中配置的静态路由转发到中间件uwsgi,uwsgi到项目里访问对应的静态文件