我正在尝试使用Flask在Raspberry Pi上运行一个简单的Web服务器。当我运行我的Flask应用程序时,它说:
但是当我在Chrome中的笔记本电脑上输入此地址时,我
ERR_CONNECTION_REFUSED
我可以在Raspberry Pi的浏览器上打开127.0.0.1:5000。从另一台计算机连接需要做什么?
答案 0 :(得分:93)
像这样运行您的应用:
if __name__ == '__main__':
app.run(host='0.0.0.0')
它将使服务器externally visible。如果计算机的IP地址为192.168.X.X
,则可以在同一网络中通过5000端口访问该IP地址。比如,http://192.168.X.X:5000
答案 1 :(得分:5)
当您通过flask run
运行服务器时,请将其更改为flask run --host=0.0.0.0
连接,找到运行脚本的服务器的IPV4地址。在同一网络上,转到http://[IPV4 address]:5000
答案 2 :(得分:5)
原因也可能是防火墙拒绝端口5000上的传入连接。尝试:
sudo ufw allow 5000
答案 3 :(得分:3)
您必须运行开发服务器,以便它监听所有接口上的请求,而不仅仅是本地接口上的请求
要求Flask听0.0.0.0:PORT_NUMBER
或您可以选择的任何其他端口
答案 4 :(得分:3)
app.run(host='0.0.0.0',port=5000)
如果您以这种方式运行您的应用,那么您的服务器将在外部可见。 步骤Setp:
使用以下命令运行您的应用
<强> app.run(主机= '0.0.0.0',端口= 5000)强>
转到窗口cmd。输入 ipconfig 并获取IPV4地址,假设您的IPV4地址为192.168.X.X
转到移动浏览器并输入 192.168.X.X:5000
答案 5 :(得分:0)
禁用代理对我有用。
答案 6 :(得分:0)
如果您的app.run()中包含“ debug = True”,那么其他计算机也将看不到它。在app.run()中指定主机和端口,而不使用“ debug = True”。
答案 7 :(得分:0)
var a = [1, 2, 3];
var b = '1, 2, 3';
console.log(a == b); // Outputs true
console.log(a === b); //Outputs false
并运行自己的Ipv4
像他的http://[Your Ipv4地址]:5000