【问题标题】:Server information in a Flask appFlask 应用程序中的服务器信息
【发布时间】:2016-01-22 13:56:30
【问题描述】:

打算

我希望能够知道哪个服务器正在运行我的 Flask 应用程序。(Werkzeug 或 Gunicorn)以及它是否被 NGINX 或 Apache 代理。

问题

我认为我可以使用 JavaScript 获取响应并获取服务器标头,但是如果它是由 NGINX 或 Apache 代理的,我将无法分辨出我正在运行的 gunicorn 或 werkzeug .

有没有办法告诉烧瓶应用程序中的服务器?

【问题讨论】:

  • Werkzeug 不是运行 Flask 应用程序的服务器。 Flask 基于 Werkzeug,它为您提供 WSGI 实用程序。 Gunicorn 是一个网络服务器,它处理请求并将它们发送到您的 Flask 应用程序。很可能你有 Nginx(或 Apache)--> Gunicorn --> Flask App。只是为了澄清。

标签: python flask


【解决方案1】:

有些服务器会将SERVER_SOFTWARE添加到os环境中。 Gunicorn 会这样做。

@app.route('/server')
def server():
    return os.environ.get('SERVER_SOFTWARE')

结果:

【讨论】:

  • 我会等一下!谢谢?
  • 顺便说一句,路由应该返回一个字符串而不是一个对象。我让我与return "%s" % os.environ.get('SERVER_SOFTWARE')合作
猜你喜欢
  • 1970-01-01
  • 2018-01-29
  • 1970-01-01
  • 2022-06-23
  • 2016-12-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多