flask+Gunicorn部署外网无法访问

参考文章:

  • https://www.jianshu.com/p/260f18aa5462
  • https://www.jianshu.com/p/e8d125372ca5
  • https://www.jianshu.com/p/fecf15ad0c9a
  • https://blog.csdn.net/zs_2014/article/details/41249347
  • 终止gunicorn服务 https://blog.csdn.net/adley_app/article/details/82812905
    需求:
    用户传递参数,去数据库查询相应的数据,进行排名,然后返回json,有一个分组后进行排名不会,也没有百度到就使用了pandas进行了分组排序取值。
    部署:
    部署时外网无法访问是真的坑,搞了好久,网上的答案都是你抄我,我抄你,百度了半天都一个样,也没解决问题,
    具体是:
from flask import Flask
app = Flask(__name__)
@app.route('/get_one_haha')
def index():
    return 'hello world'
if __name__ == '__main__':
    app.run(host='0.0.0.0',port=5000)
  • 假如你是买的云服务器(阿里/腾讯/华为等等),记得把端口安全组打开,这个每一家的打开都不太一样,略去不表。
  • 设置host为0.0.0.0,
    设置gunicorn的配置
bind = "0.0.0.0:5000"
daemon = True

这两行代码是:默认ip可以访问,和后台运行,守护进程方式,就是类似于Linux的nohup
这样的话开始启动gunicorn
gunicorn -c 配置文件.py 执行文件名:app
查询:ps aux|gerp gunicorn,假如有进程就是运行了。

捕获.PNG

然后外网访问时写的是你云服务器公网ip:

你可能感兴趣的:(flask+Gunicorn部署外网无法访问)