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可以访问了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。