Flask Tutorials

在 0.0.0.0 上运行你的 Flask 应用

Spread the love

Flask是一个流行的Python微框架,用于构建Web应用程序。有时,您需要您的Flask应用程序能够从网络上的任何设备访问,而不仅仅是您的本地机器。这需要将`app.run()`中的`host`参数设置为`’0.0.0.0’`。本文解释如何配置您的Flask开发服务器以实现网络可访问性。

目录

app.run()函数

app.run()函数启动Flask开发服务器。它接受几个可选参数来定制其行为。关键参数包括`host`、`port`和`debug`。


from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "

Hello, World!

" if __name__ == "__main__": app.run() # 默认值为host='127.0.0.1', port=5000

这将在`localhost` (127.0.0.1) 上使用端口5000启动服务器。为了使其可以从其他设备访问,我们将调整`host`参数。

配置Host参数

host参数指定服务器监听的网络接口。将其设置为`’0.0.0.0’`指示服务器监听所有可用接口,使您的应用程序可以从同一网络上的任何设备访问。


if __name__ == "__main__":
    app.run(host='0.0.0.0')

使用Port参数

port参数指定端口号。默认为5000。如果此端口已被使用,您需要选择另一个端口。


if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8080)

调试模式

debug参数启用调试功能,例如代码更改后的自动重新加载和交互式调试器。它在开发过程中非常有用,但在生产环境中存在重大的安全风险。切勿在生产环境中使用debug=True


if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8080, debug=True)

综合示例

组合所有参数可以完全控制您的开发服务器。


if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8081, debug=True) 

生产环境部署

app.run()方法仅用于开发。对于生产环境,请使用生产就绪的WSGI服务器(例如Gunicorn或uWSGI)以及进程管理器(例如systemd或supervisord),以获得更好的性能、安全性和可靠性。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注