Flask 外部访问服务配置
一、默认行为说明
默认调用 app.run() 等价于:
app.run(host='127.0.0.1')Code language: JavaScript (javascript)
127.0.0.1:本地回环地址- 只有本机电脑能够访问服务,局域网内其他手机、电脑无法连接。
二、开启外部访问
app.run(host='0.0.0.0')Code language: JavaScript (javascript)
参数含义
host='0.0.0.0':监听本机所有网卡IP地址(局域网IP、本地回环IP),允许同一局域网下其他设备访问。
完整常用写法(同时开启调试+开放访问)
app.run(host='0.0.0.0', debug=True)Code language: PHP (php)
三、如何访问服务
- 查询本机局域网IP(Windows:
ipconfig;Mac/Linux:ifconfig) - 其他设备浏览器访问格式:
http://你的局域网IP:5000
Flask默认端口为5000;如需修改端口,增加
port参数:
app.run(host='0.0.0.0', port=8080, debug=True)Code language: PHP (php)
- 局域网访问:
host="0.0.0.0"即可(同一WiFi下互通) - 公网外网访问:仅设置
0.0.0.0不够,还需要端口映射、内网穿透等额外手段。
完整例子
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return "Hello Flask 局域网可访问服务"
if __name__ == '__main__':
# 开放局域网访问 + 调试模式
app.run(host="0.0.0.0", debug=True)Code language: PHP (php)
以上配置,如果您服务器的端口开启了,公网就可以基于你的IP可以访问到我们的网站了。
Previous: Flask介绍和第一个例子
Next: 路由配置