当前位置: 代码迷 >> 综合 >> Linux如何去部署Django (Nginx + uwsgi + Python3 + Django)
  详细解决方案

Linux如何去部署Django (Nginx + uwsgi + Python3 + Django)

热度:82   发布时间:2023-12-21 03:32:33.0

系统: centos_7 + Python 3.5.2 + nginx-1.13.7 + uWSGI 2.0.17.1 + Django2.2.0
使用阿里云服务器,点我直达查看详细配置情况。安装了这么多后台服务,内存低了真不行。

具体步骤如下:

1.升级Python3

系统自带的一般为Python2,需要对旧版本进行升级

wget https:// www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
tar -zxvf Python-3.5.2.tgz
cd Python-3.5.2
./configure
make
make install
查看结果

python3 -V
Python 3.5.2
设置python 默认版本3.x

ls -al /usr/bin | grep python
-rwxr-xr-x. 1 root root 11216 12月 1 2018 abrt-action-analyze-python

1 root root 6 4月 30 12:11 python -> python2
1 root root 5 4月 30 12:11 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 4月 20 2018 python2.7
将原来 python 的软链接重命名:

mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python3 /usr/bin/python
python -V
python 3.5.2
2.升级pip3(该过程可能要安装 setuptools)

wget https:// pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz --no-check-certificate
tar xvf pip-1.3.1.tar.gz
python pip-1.3.1/setup.py install
3.安装Django (很多方法可以自己选)

pip install django
4.安装uwsgi

pip install uwsgi
5.安装nginx和配置nginx.conf文件

wget http:// nginx.org/download/nginx-1.13.7.tar.gz
tar -zxvf nginx-1.13.7.tar.gz
./configure
make
make install
.conf文件配置

server {
listen 8996; #暴露给外部访问的端口
server_name localhost;

charset utf-8;
location / {

include uwsgi_params;
uwsgi_pass 127.0.0.1:8997; #外部访问8996就转发到内部8997
}
location /static/ {

alias /home/www/myproject/myapp/static/; #项目静态路径设置
}
}
6.配置diango

127.0.0.1:8997
/home/www/myproject
myproject.wsgi
4
uwsgi.log

7.运行nginx

cd /usr/local/nginx/sbin
./nginx
//没有任何输出说明启动成功
这时候可以打开网页访问对应IP了

8.运行uwgix

cd 到项目
uwsgi -x 项目.xml
// [uWSGI] parsing config file my_blog.xml 一般这样输出就说明成功了
这个时候访问IP就可以打开具体的网页喽

一般来说到这里就算搞成了,但是现实中肯定有很多问题,对于这些问题我也做了总结有需要的可以查看Linux 下部署Django项目你可能会遇到的问题!
下面我对经常用的指令做下总结方便日后使用
常用指令

配置 nginx.conf文件

cd /usr/local/nginx/conf/
vim nginx.conf
启动: nginx

cd /usr/local/nginx/sbin
./nginx
运行 uwsgi

uwsgi -x my_blog.xml
查看 nginx 日志

tail -f /usr/local/nginx/logs/access.log
查看日志 uwsgi

tail -f uwsgi.log
查看进程号

ps -ef|grep nginx
杀死进程

kill 进程ID
查看端口使用情况

netstat -ntulp|grep 80
MAC查看端口占用情况

lsof -i tcp:8000

云计算作为新基建的基础设施,在2020年疫情期间的高效应用,得到了很多企业的认可,企业业务上云成为2020年企业选择基础设施的首选。

面对众多的云平台,个人和企业该如何选择呢?我们回归正题,现在哪家的云服务器性价比最高呢?

可以看看这篇文档:【云服务器推荐】2021年腾讯云、阿里云、华为云服务器价格和配置评测