阿里云部署nodejs,公网访问不了,域名不加端口号访问

背景:
1.我买的阿里云服务器是香港的CentOS 7.3(便宜)
2.已成功安装了nodejs
操作:
1.新建项目文件example.js

cd ~
touch example.js

2.编辑example.js文件

vi example.js

2.1.输入i,进入编辑模式,将下面代码(简单的nodejs创建服务代码)粘贴到文件中。使用Esc按钮,退出编辑模式,输入:wq,回车,保存文件内容并退出。

const http = require('http');
const hostname = '0.0.0.0';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World from aliyun');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});

2.2.划重点:port=3000;这是我设置的端口号,这个端口号是随便设置的;后面还需要在阿里云管理后台中释放这个端口供公网访问。
3.运行项目:
3.1.直接运行,退出就关闭服务

node ~/example.js

3.2.当然也可以将项目置于后台运行(关闭是直接kill pid):

node ~/example.js &

关闭服务:
在这里插入图片描述
4.使用命令查看项目端口是否存在。

netstat -tpln 或者 netstat -nultp

5.坑
5.1.假如发现端口没有正常运行,则可能是端口没有放行,需要登录ECS管理控制台,在安全组中添加安全组规则放行端口(如本示例中为TCP 3000端口)
在这里插入图片描述
5.2.如果你的实例中开启了防火墙,必须添加端口的入站规则(如本示例中为TCP 3000端口)。
在这里插入图片描述
6.公网访问
6.1.随便在一台联网机器的浏览器中输入 http://实例公网ip:端口号
在这里插入图片描述
6.2.如果你绑定了域名,也可以在浏览器中输入 域名:端口号
在这里插入图片描述
在这里插入图片描述
7.当然所有人都会觉得要输入域名+端口号,真是太蠢了。所以我们要去掉端口号,直接通过域名就能访问;
由于阿里云默认的访问端口是80;所以上面代码中的const port = 3000 直接改成 const port = 80 就可以了。
在这里插入图片描述

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值