Flask应用程序无法访问铬代理后面

时间:2018-01-29 17:13:04

标签: google-chrome firefox flask proxy

我正在开发一个在远程服务器上按如下方式启动的Flask应用程序: app.run(host='0.0.0.0', port=5000)

症状如下:

  • 我可以使用家用电脑上的任何浏览器访问server_IP:5000/ping
  • 我可以使用默认“网络”设置的代理服务器后面的公司计算机访问Firefox server_IP:5000/ping
  • 当我在“网络”标签(ubuntu)中指定系统范围的代理设置时,我可以使用我公司计算机上的任何浏览器(包括Chrome)访问server_IP:5000/ping
  • 当我没有指定代理时,我无法访问 server_IP:5000/ping 与Chrome 来自代理服务器后面的公司计算机。相反,我得到:ERR_CONNECTION_TIMED_OUT

是否有人建议为什么会发生这种情况以及如何解决?我正在寻找服务器端的修复程序,因为我不希望解决方案让应用程序的潜在用户不得不更改他们的Chrome设置......

修改

事实证明将应用程序放在8080端口上解决了我的问题。虽然这个问题肯定与公司代理有关,但我很难理解为什么Firefox可以访问同一个地址而不是Chrome ...

编辑2

事实证明我的Firefox有一个我不知道的手动代理配置(而不是chrome),这解释了为什么一个浏览器可以访问应用程序而不是另一个浏览器。最初的问题可能与5000端口上的主代理阻止请求有关。

1 个答案:

答案 0 :(得分:0)

Firefox的“默认”设置是什么意思?是“自动检测此网络的代理设置”还是“使用系统代理设置”?您的Firefox版本的措辞可能略有不同。当您说“默认”网络“设置”时,是否与“自动检测此网络的代理设置”相同/相似?

如果您的公司像我一样偏执狂,绝对没有来自内部的流量可以连接到外部而不通过代理服务器(所以他们可以控制它;没有Facebook,色情网站等)。并没有办法解决这个问题。需要连接到外部的一切必须以某种方式支持&配置为使用代理服务器。这只是一个问题。有时它是明确配置的;有时它是从系统中检测到或继承的。我强烈怀疑你的Firefox就是这种情况。

您的用户在哪里?贵公司内部的用户可能已经拥有必要的配置,否则他们甚至无法访问google.com等。公司外部的用户无需通过公司的代理,因此不需要贵公司的代理配置。