我有一个基于ExpressJS和NodeJS构建的应用程序。我们在Linode服务器上托管了它。该应用程序在3000端口提供。
该应用已经工作了一年,但最近我们不断收到连接错误。有时候还可以。但大部分时间都没有。
我们得到的错误通常是:
GET http://0.0.0.0:3000/stylesheets/bootstrap-tagsinput.css net::ERR_CONNECTION_RESET 0.0.0.0/:7
GET http://0.0.0.0:3000/stylesheets/jasny-bootstrap/jasny-bootstrap.css net::ERR_CONNECTION_RESET 0.0.0.0/:7
GET http://0.0.0.0:3000/javascripts/jquery.min.js net::ERR_CONNECTION_RESET 0.0.0.0/:63
GET http://0.0.0.0:3000/stylesheets/fonts.css net::ERR_CONNECTION_REFUSED 0.0.0.0/:63
GET http://0.0.0.0:3000/javascripts/bootstrap.min.js net::ERR_CONNECTION_REFUSED 0.0.0.0/:64
GET http://0.0.0.0:3000/javascripts/bootstrap-tagsinput.js net::ERR_CONNECTION_REFUSED 0.0.0.0/:65
GET http://0.0.0.0:3000/javascripts/jasny-bootstrap/jasny-bootstrap.js net::ERR_CONNECTION_REFUSED 0.0.0.0/:65
GET http://0.0.0.0:3000/vendors/bootstrap-validator/dist/validator.min.js net::ERR_CONNECTION_REFUSED 0.0.0.0/:66
GET http://0.0.0.0:3000/javascripts/common.js net::ERR_CONNECTION_REFUSED 0.0.0.0/:67
GET http://0.0.0.0:3000/fonts/glyphicons-halflings-regular.woff2 net::ERR_CONNECTION_REFUSED 0.0.0.0/:64
GET http://0.0.0.0:3000/images/pollen-dustbox-transparent.png net::ERR_CONNECTION_REFUSED 0.0.0.0/:52
GET http://0.0.0.0:3000/images/carbon-transparent.png net::ERR_CONNECTION_REFUSED 0.0.0.0/:64
有时浏览器会说:
This site can't be reached.
任何想法导致了什么?我该如何解决这个问题?
注意我使用 0.0.0.0 作为示例。不确定我是否应该分享我们的应用程序IP地址。不想被黑客攻击!
修改
当我运行netstat
时,我没有看到端口3000在列表中:
$ sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 15065/mongod
tcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN 3262/systemd-resolv
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3265/sshd
tcp 0 0 0.0.0.0:3838 0.0.0.0:* LISTEN 3267/shiny-server
tcp6 0 0 :::5355 :::* LISTEN 3262/systemd-resolv
tcp6 0 0 :::80 :::* LISTEN 1514/httpd
tcp6 0 0 :::22 :::* LISTEN 3265/sshd
udp 0 0 0.0.0.0:5355 0.0.0.0:* 3262/systemd-resolv
udp 0 0 0.0.0.0:68 0.0.0.0:* 3260/dhcpcd
udp6 0 0 :::5355 :::* 3262/systemd-resolv
Linode服务器或应用程序级错误是问题吗?有什么想法吗?
答案 0 :(得分:2)
我在"安全"中遇到了同样的错误。 (在我的Windows机器上,brandmauer或它是如何调用的)80端口被禁用。 启用后 - 一切正常。
当您使用3000端口时 - 检查它是否已启用。
我的另一个问题是在路由器上是相同的(在我的wify路由器上我必须设置我想要80端口将请求转发到我的PC 80端口)。如果你正在使用路由器chack那么配置。
最好是制作nginx服务器并对3000端口进行反向代理,你可以查阅在线提供的手册。