部署(5.安装配置uwsgi)

Posted xuepangzi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了部署(5.安装配置uwsgi)相关的知识,希望对你有一定的参考价值。

1.安装配置uwsgi

1.安装uwsgi到真实(非虚拟环境)环境下

#退出虚拟环境
deactivate
cd ..
apt install python3-pip
y
apt-get install -y python3-dev
pip3 install uwsgi

2.使用uwsgi启动项目

1.运行项目

uwsgi --chdir /home/ubuntu/untitled --home /home/ubuntu/env36 --http :8000 --module untitled.wsgi

2.访问测试

技术图片

 

 3.退出运行状态

Ctrl键+C键

3.通过uwsgi通过ini执行运行项目

 1.创建ini文件

cd untitled/
mkdir untitled_uwsgi
cd untitled_uwsgi vim untitled.ini

在英文输入下点击i键进入输入状态,输入:

[uwsgi]
#项目目录
chdir=/home/ubuntu/untitled
#wsgi目录
module=untitled.wsgi:application
#虚拟环境
home=/home/ubuntu/env36
master=true
processes=1
socket = 0.0.0.0:9000
vacuum = True
daemonize=yes

 点击【Esc】键,输入:wq,保存退出

2.通过执行ini文件启动项目命令

uwsgi --ini /home/ubuntu/untitled/untitled_uwsgi/untitled.ini

 

2.安装配置nginx

1.安装Nginx

apt-get install nginx
y

2.配置Nginx

1.删除default:

#防止错误,先把default文件给删除了
cd /etc/nginx/sites-available/
rm default 
ls
cd /etc/nginx/sites-enabled
ls
rm default 
ls

2.新建配置文件:

cd /etc/nginx/sites-available/
vim demo.conf

3.编辑内容:

i #进入编辑状态

内容

server{
  listen 8000;
  server_name 49.234.49.146;
  charset utf-8;

  client_max_body_size 75M;

  location /static {
    alias /home/ubuntu/untitled/static;
  }
  location /media {
    alias /home/ubuntu/untitled/media;
  }

  location / {
    uwsgi_pass 127.0.0.1:9000;
    include /etc/nginx/uwsgi_params;
  }
}

保存退出:

Esc键+输入:wq+回车 #保存退出

4.建立软链接

cd /etc/nginx/
ln -s /etc/nginx/sites-available/demo.conf /etc/nginx/sites-enabled/demo.conf
ls sites-enabled/

 

nginx -t #查看Nginx 运行情况

service nginx restart #重启Nginx

 

如果报错:

Job for nginx.service failed because the control process exited with error code.
See "systemctl status nginx.service" and "journalctl -xe" for details.

查看端口8000是否占用:

netstat -apn|grep :8000

查看与uwsgi相关进程

ps -aux|grep uwsgi

停止uwsgi

sudo pkill -f uwsgi -9

 

nginx -t #查看Nginx 运行情况

service nginx restart #重启Nginx

技术图片

 

 

至此,后端项目部署成功!

以上是关于部署(5.安装配置uwsgi)的主要内容,如果未能解决你的问题,请参考以下文章

Django+Nginx+uWSGI部署

Flask+uwsgi+nginx 部署

win7 怎么部署python uwsgi网站环境

django+nginx+uwsgi部署web站点

在阿里云服务器使用nginx+uwsgi+venv部署Django项目

Python3 - Nginx+uwsgi+Flask 部署到Centos服务器