Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何通过ssh访问本地服务器上的端口?_Python_Flask_Ssh - Fatal编程技术网

Python 如何通过ssh访问本地服务器上的端口?

Python 如何通过ssh访问本地服务器上的端口?,python,flask,ssh,Python,Flask,Ssh,我在同一网络上的远程计算机上运行flask服务器,其IP为192.168.1.11。因此,网络的flask服务器端点应为192.168.1.11:5000,其中5000是flask选择的默认端口 但是,当我点击来自本地机器IP:192.168.1.10到192.168.1.11:5000的请求时,它不会返回任何内容 但是,当我在本地计算机IP上运行以下命令时:192.168.1.10 ssh-L 4000:127.0.0.1:5000user@192.168.1.11然后点击localhost:

我在同一网络上的远程计算机上运行flask服务器,其IP为192.168.1.11。因此,网络的flask服务器端点应为192.168.1.11:5000,其中5000是flask选择的默认端口

但是,当我点击来自本地机器IP:192.168.1.10到192.168.1.11:5000的请求时,它不会返回任何内容

但是,当我在本地计算机IP上运行以下命令时:192.168.1.10 ssh-L 4000:127.0.0.1:5000user@192.168.1.11然后点击localhost:4000,就可以了。我知道这是ssh中的本地端口转发

但当我在远程机器上运行jupyter笔记本时,它在192.168.1.11:8890上运行。然后,当我在本地机器上运行192.168.1.11:8890时,它就工作了


为什么jupyter可以工作,而不是通过默认配置?这是因为jupyter执行某种远程ssh端口转发。我如何运行一些代码,例如一些配置,比如ssh-R xxxx:xxxx:xxxx-xxxx

您的flask服务器似乎只在环回接口上侦听

发件人:

外部可见服务器 如果运行服务器,您会注意到服务器只能从您自己的计算机访问,而不能从网络中的任何其他计算机访问。这是默认设置,因为在调试模式下,应用程序的用户可以在您的计算机上执行任意Python代码

如果禁用了调试器或信任网络上的用户,只需将-host=0.0.0.0添加到命令行,即可使服务器公开可用:

这会告诉您的操作系统在所有公共IP上侦听


请您共享一个,以便我们能够找出错误所在?也就是说,包含重现问题所需的最少代码。您尝试了什么?您是否尝试更改默认的烧瓶端口?它起作用了吗?
flask run --host=0.0.0.0