我正在运行一个NodeJS
在端口上运行的应用程序3001
。我希望能够从我的手机访问该网站。
我的本地 IP 是:10.0.0.27
我的手机是10.0.0.7
我禁用了防火墙,它起作用了。我创建了一个3001
向世界公开端口的入站规则(或者我以为我这样做了),但没有起作用。
我知道这是一个防火墙问题,我只是不确定如何创建入站规则以允许10.0.0.27:3001
访问但不覆盖端口80
允许或禁用防火墙。
这是Windows 10
防火墙设置:
- 本地端口:3001
- 远程端口:所有端口
- 任何 IP、任何用户
- 公共、私人和域
答案1
这似乎是防火墙问题。你能绝对确定它只需要端口 3001 并且是 TCP 吗?
听起来你设置的规则是正确的,但让我们再检查一下。
- 打开控制面板 -> Windows 防火墙
- 点击
Advanced Settings
- 选择
Inbound Rules
- 点击
New Rule
- 规则类型 =
Port
然后点击Next
- 规则适用于
TCP
,并指定端口3001
,然后单击Next
- 操作 =
Allow the connection
然后点击Next
- 此规则何时适用?选择全部 -
Domain
Private
然后Public
单击Next
- 为新规则命名并点击
Finish
就是这样。它应该可以工作了。
如果它不起作用,那么我会说有以下两种情况之一。您的连接需要的不仅仅是端口 3001。如果是这种情况,请再次禁用防火墙并确认应用程序正常运行。在应用程序连接时,从管理命令提示符运行以下命令:netstat -abn | more
。翻阅结果并确定与您的端点关联的侦听端口或活动连接。这可能会显示您不知道的内容。
否则,计算机上的其他软件可能会阻止某些操作。只需确保没有其他安全软件阻止某些操作即可。