【问题标题】:How to open port 80 for node server on local machine?如何在本地机器上为节点服务器打开 80 端口?
【发布时间】:2020-05-02 19:54:08
【问题描述】:

如何使用本地 Linux 机器上的 80 端口作为节点服务器的端口?

当节点服务器运行时,netstat 命令netstat -ptuln 对这个端口说如下:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:80            0.0.0.0:*               LISTEN      -                  

我在这个网站上找到了一些关于命令 sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT 的建议。我执行了这个命令,但是当我使用 curl (curl 1.97.xxx.xxx.xx) 发出请求时,它会一直以 curl: (7) Failed to connect to xxxxxx port 80: Connection refused 响应。

但使用 curl 可以使用以下方式:curl 0.0.0.0:80curl localhost:80

我的结论是,我不知何故没有正确打开端口,但我在互联网上重复找到的只是我之前提到的命令。

我知道我可以通过使用 apache 服务器轻松解决此问题,但我想不使用它。

谢谢!

【问题讨论】:

    标签: linux networking web-deployment


    【解决方案1】:

    粘贴

    的输出

    netstat -ptuln

    命令。我认为问题在于您的网络服务器在本地地址上运行,网络中的其他机器无法访问。

    【讨论】:

    • 现在您的节点服务器只为您的计算机(localhost/you)运行,以便外部世界可以访问本地地址上的 netstat 输出应该看起来像 ::80,您正在运行 express.js 还是显示服务器启动时你的 app.js 文件
    • 我认为你是对的,但是为什么通过 curl 0.0.0.0:80 的请求工作,如果它只在我的本地主机上运行?我认为对 0.0.0.0 的请求将通过我的 IP 地址连接。我将尝试一个更简单的节点服务器并在稍后发布代码。
    • 而不是在本地主机上运行节点,而是将 0.0.0.0 作为服务器 IP 地址,它应该可以正常工作
    猜你喜欢
    • 1970-01-01
    • 2013-02-19
    • 2015-09-08
    • 2015-09-19
    • 2014-07-19
    • 2020-07-09
    • 2022-12-30
    • 2016-04-17
    • 1970-01-01
    相关资源
    最近更新 更多