Python Tornado作为普通服务器
如何在Tornado Web服务器上侦听不是来自本地网络的连接?默认情况下,它只侦听来自本地主机的连接。我尝试了Django的提示,开始监听地址0.0.0.0,但这不起作用 一些简单的代码:Python Tornado作为普通服务器,python,tornado,Python,Tornado,如何在Tornado Web服务器上侦听不是来自本地网络的连接?默认情况下,它只侦听来自本地主机的连接。我尝试了Django的提示,开始监听地址0.0.0.0,但这不起作用 一些简单的代码: server = tornado.httpserver.HTTPServer(application) server.listen(8000, '0.0.0.0') 默认情况下,tornado httpserver将在指定端口上侦听所有网络接口(IP地址)。因此,只通过港口应该可以 您还需要确保启动服务器
server = tornado.httpserver.HTTPServer(application)
server.listen(8000, '0.0.0.0')
默认情况下,tornado httpserver将在指定端口上侦听所有网络接口(IP地址)。因此,只通过港口应该可以 您还需要确保启动服务器正在使用的ioloop实例:
http_server = tornado.httpserver.HTTPServer(application)
http_server.listen(8000)
tornado.ioloop.IOLoop.instance().start()
这些都很好。我在尝试诊断类似问题时发现了这个问题(tornado服务器运行在计算机a上,无法从计算机B访问)
我终于明白了,我需要打开计算机A防火墙上的端口。所以现在我不知道。我正在尝试运行project as service以从其他计算机(最重要的是core)访问它,但当我可以从本地计算机(本地主机、LAN IP和WAN IP,我有转发端口)访问它时,我没有问题,但当我尝试从虚拟机或我的服务器连接时,我无法访问。即使我修改了源代码,添加了缺少的地址parm。只是简单地看了一下,但在我看来,该应用程序确实配置了tornado HTTPServer实例来监听所有接口。看,没有地址参数被传递。是的,我建立了这个,根据你的话是应该工作,但它没有。我不知道。我可以使用的唯一解决方案是启动tornado作为后端,并将ex.nginix作为主Web服务器。这应该以所有限制结束。编辑您的问题并添加您正在使用的相关配置(端口、地址等),以及服务器的一些详细信息(它是IP,它是什么操作系统)。我将有一个ThinkforDevelopment,我在自己的计算机上运行这个脚本。过一会儿,我将把它放到我的服务器上进行深入测试。