为什么当我输入 nodejs 正在侦听的浏览器 IP 和端口时看不到响应?

Why i don't see response when I type in browser IP and port where nodejs is listening?

我正在尝试了解 nodejs 服务器的工作原理以及如何让 NodeJs 服务器在我发送请求时发送 Html。

我在 VPS 中有一个带有 express 的 nodejs。在同一个 VPS 中,我通过 vesta 托管了一个网页。我有一个代码可以在一个端口 (4000) 上监听,我希望它发送一个 Html。当我 运行 节点文件时,我收到服务器正在侦听的反馈,但是当我在浏览器中输入网页的 IP 和端口 (IP:4000) 时,我得到无法访问此站点。

我没有使用端口 8080,因为该端口已被 HTTP 使用,我收到错误 listen EADDRINUSE ::8080

我错过了什么?

const express = require('express');

const app = express();

const PORT = 4000;

app.get('/about', (req, res) => {
  res.sendFile('./views/page.html', { root: __dirname });
});

app.listen(PORT, () => {
  console.log(`Server running at: http://localhost:${PORT}/`);
});

确保您的 VPS 正在侦听端口 4000。