nginx+uwsgi+flask 配置 HTTPS

话接上文,https://www.cnblogs.com/CooperXia-847550730/p/11526734.html文里写了一个随机图片API只用了flask部署,非常不稳定,

几个小时就dead了,所以打算部署在nginx服务器上。

先把接口给了:https://116.62.5.101,http://116.62.5.101,一个是https,一个是http。端口是443和80,可缺省。

首先介绍一下:

nginx 是一个web服务器,用来接收请求,建立连接,转发到后台等

uwsgi其实也是一个web服务器,但是还是没有nginx稳定,处理迸发也不如nginx,这里用uwsgi只是为了让nginx实现反向代理,flask是没办法直接被nginx反向代理的。

flask就是一个web框架,实现网站功能

 

ok,接下来开始部署,首先安装nginx和uwsgi

yum install nginx

pip3 install uwsgi

就可以了

uwsgi的食用方法:

uwsgi --socket 0.0.0.0:5000 --protocol=http -p 3 -w run:app

这样可以直接启动,

--socket 0.0.0.0:5000:指定暴露端口号为5000。

--protocol=http:说明使用 http 协议,即端口5000可以直接使用HTTP请求进行访问。

-p 3表示启动的服务占用3个进程。

-w run:app:-w 指明了要启动的模块,run 就是项目启动文件 run.py 去掉扩展名,app 是 run.py 文件中的变量 app,即 Flask 实例。

 

然后介绍配置文件启动的方法:

在项目目录下新建uwsgi.ini文件,

内容:

[uwsgi]
module = sprocess:app
master = true
processes = 3
chdir = ./
socket = ./project.sock
socket = 127.0.0.1:4000
logto = ./project.log
chmod-socket = 660
vacuum = true

下次启动直接:

nohup uwsgi --ini uwsgi.ini > uwsgi.txt 2>&1 &

(nohup是后台启动命令,可以直接yum安装)

 

接下来配置nginx服务器,

vim /etc/nginx/nginx.conf,

内容:

worker_processes 4;
events { worker_connections 1024; }
http {
include mime.types;
default_type application/octet-stream;

server{
listen 80;
listen 443 ssl;
ssl_certificate /root/nginxproject/server.crt;
ssl_certificate_key /root/nginxproject/server.key;

location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:4000;
}

}
}

其中涉及的crt和key证书 需要用openssl生成,上篇文章已经说了,

如果不需要https去掉这三行就行

listen 443 ssl;
ssl_certificate /root/nginxproject/server.crt;
ssl_certificate_key /root/nginxproject/server.key;

 

 

现在就可以访问了!但是博主犯了一个错误,而且很多次,就是每次都忘记去aliyun里打开相应的端口!!!!!!

我死了! 花了一个多小时,以为是证书或者配置的问题,被自己蠢哭

 

 

转载于:https://www.cnblogs.com/CooperXia-847550730/p/11537076.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值