阿里云服务器部署笔记二(python3、Flask、uWSGI、Nginx)

  从git上把项目拉到服务器,项目可以在服务器上运行后,就只需要配置uwsgi和nginx了。它们的逻辑关系是:外部请求->nginx->uwsgi->项目实例。

一、配置uwsgi

  如果你的项目是python框架,切记要用pip安装uwsgi,用centos自带的yum安装uwsgi亲测不能支持python项目。

pip install uwsgi

  之后在项目目录下创建一个.ini文件

vim config.ini

  配置内容如下

[uwsgi]
chdir = /root/项目目录
wsgi-file = .py结尾的运行文件
callable = app //为你的项目实例命名。flask项目需要这一句,django好像不需要
master = true //开启一个master进程监控项目运行
socket = 127.0.0.1:5000 //uwsgi的端口。要与项目运行的端口一致
processes = 4
threads = 2
buffer-size = 32768 

  然后试着运行一下uwsgi

uwsgi --ini config.ini

  运行成功

  用lsof查看5000端口,可以看到uwsgi占用了这个端口

  在运行命令后加&是在后台运行,这样就可以继续配置nginx了

uwsgi --ini config.ini&

二、配置nginx

  进入nginx目录

cd /etc/nginx

  配置nginx.conf文件

vim nginx.conf

  在它的http中加入一个server

    server {
    listen 80; //监听80端口,外部访问服务器的时候都要通过80端口
    server_name 服务器公网ip;
    
    location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:5000; //要与uwsgi中的socket参数一致
       # proxy_pass  http://127.0.0.1:5000;
    }
       access_log /var/log/access_unicom.log main;//访问日志
    }

  然后启动nginx

nginx

  查看80端口,nginx已经正常运行

  用postman测试一下服务器应用的接口,可以得到返回的数据,则配置成功

原文地址:https://www.cnblogs.com/luozx207/p/9525323.html