koa部署到服务器 访问公网IPxx.xx.xx.xx:3000访问不到,在阿里云实例安全组,已经放行3000端口,但仍访问不到。

在网上搜了很久,但大部分回答都是在阿里云实例安全组配置,放行3000端口。

在csdn一篇文章上看是app.listen(3000)的写法问题(https://blog.csdn.net/qq_3639...

var app = new Koa();
app.listen(5000);

文章主人是把上面写发改成如下写法解决的。

var app = new Koa();
app.listen(5000, '0.0.0.0');

但我改过后仍不好使。在外网仍然访问不到。

在思否上看看见一个和我的问题一样的文章(https://segmentfault.com/q/10...,这篇文章是提问,并没给出解决访问。但我在看见下面的回答“服务器自带防火墙看看是不是关了?我一般只开阿里云给的防火墙,系统自带的关掉了”。于是我开始检查防火墙问题,果然是防火墙问题。

操作如下

服务器是阿里云的。系统是centOS7.6。直接使用的阿里云控制台实例的远程连接。

先检查防火墙状态

firewall-cmd --state 
running 

防火墙是开启的,检查已经开放的端口

firewall-cmd --list-ports 
20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 888/tcp

3000端口没有放行,开启3000端口

firewall-cmd --zone=public --add-port=3000/tcp --permanent 
success

开启后,重启防火墙

firewall-cmd --reload 
success

再次查看已经开放的端口

firewall-cmd --list-ports 
20/tcp 21/tcp 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 888/tcp 3000/tcp 

在公网 xx.x.x.x:3000可以访问了。


张思睿
6 声望0 粉丝

下一篇 »
HTTP缓存机制