python flask 假死情况处理+https证书添加

前言

        当使用flask编写了后台程序跑在服务器端的时候,有时候虽然后台中显示在运行,但是页面无法访问,出现这个情况可以使用如下方法修改代码,进而防止假死,另外记录下flask下证书的添加。

假死处理

出现进程存在,无法访问,端口开放的情况是因为flask默认为单线程,如果出现一个请求出现错误,会默认等待进而阻碍了其他访问的处理,因此需要修改为多线程且设置超时。

首先我们需要将flask修改为多线程运行,不需要多进程,启动代码修改如下即可:

app.run(host='0.0.0.0', port=443, ssl_context=ssl_context, threaded=True)

添加 threaded=Tru 即可,默认为False

然后需要添加超时处理:

app = Flask(__name__)
app.config['TEMPLATES_AUTO_RELOAD'] = 30

然后使用nohub启动即可:

nohup python3.11 main.py &

测试不会再出现假死情况。

https证书:

关于证书,首先我们可以去阿里云申请免费的证书,下载其他证书,下载下来为pem和key后缀文件

 

 添加如下代码即可加载证书进行https访问:

ssl_context  = ('configure/online.pem', 'configure/online.key')
app.run(host='0.0.0.0', port=443, ssl_context=ssl_context, threaded=True)

访问网址可以看到证书已经正常加载 

 

另外如果需要仅允许网址访问,不允许ip访问,可以添加如下代码:

@app.before_request
def limit_domain():
    if request.headers.get('Host') != 'www.myurl.com':
        return 'Forbidden', 403

 

相关推荐

  1. Nginx生成自签名证书从而添加域名的HTTPS访问

    2024-04-27 06:10:02       45 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-27 06:10:02       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-27 06:10:02       20 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-27 06:10:02       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-27 06:10:02       20 阅读

热门阅读

  1. 回归与聚类——模型保存与加载(五)

    2024-04-27 06:10:02       13 阅读
  2. 基于Hadoop的电商数据分析系统设计与实现

    2024-04-27 06:10:02       12 阅读
  3. .NET 面向对象程序设计 —— 设计模式 详细版

    2024-04-27 06:10:02       12 阅读
  4. 等保测评—华为设备核查命令

    2024-04-27 06:10:02       19 阅读
  5. Servlet、Tomcat、Control区别

    2024-04-27 06:10:02       12 阅读
  6. Django测试工具 Client

    2024-04-27 06:10:02       15 阅读