在华为云上自建聊天平台遇到的坑(开放端口)
Posted hendricks
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在华为云上自建聊天平台遇到的坑(开放端口)相关的知识,希望对你有一定的参考价值。
618的时候买了一台华为云耀云服务器,然后在暑假的时候想要用服务器做一点事情,想到在学校的时候有一个Java实验是实现本地的聊天服务器+聊天客户端,当时做实验的时候觉得好神奇,想着有朝一日要把这个简易的聊天室部署到远程服务器上,现在机会来了。
这个聊天服务器的原理是利用tcp协议(还未系统学习所以可能描述不太准确),服务器监听一个端口,比如本地(127.0.0.1)的6666端口,然后客户端与这个端口的服务器建立通信,之后客户端便不断地接收来自各个客户端的信息,然后再把收到的信息传给每一个客户端,这样就实现了一个聊天室。
把本地的聊天应用部署到服务器只需要获取到服务器的公网地址(这里是ipv4),然后用这个公网地址来替换原代码中的本地地址(localhost)
//Socket s1 = new Socket("127.0.0.1", 6666);
Socket s1 = new Socket("121.37.233.193", 6666);
但是部署到服务器上之后并没有任何效果,本地也显示无法找到远程的主机。
网上这部分资料很少,或许是我不太会搜索的原因,不过好在后来发现原来华为云有一个被成为安全组的管控措施,由它来管控各个各个端口的打开,进出情况。我试了一下放开6666端口,果然成功了。
放开端口的方式如下:
进入华为云服务器的控制台,点击自己服务器的ip地址
点击左侧的安全组进入到安全组管理
点击配置规则
这个时候可以看到上方有入方向规则、出方向规则,如果是做一个聊天平台的话需要把出入的6666端口都打开
完成了配置之后就可以愉快地在自己的服务器上配置聊天室了。
相关链接:
Rocket.Chat
起初在网上看到了Rocket.Chat
这个开源项目,它只需要拥有一台具有公网ip地址的服务器就可以在上面创建一个聊天服务器。并且配套了相应的网页、手机app、电脑桌面应用,可以说如果想要体验一下自己的聊天应用的话Rocket.Chat
是超级方便的选择了
在linux服务器上只需要一行代码就可以搭建好Rocket.Chat
name | address |
---|---|
官网 | https://rocket.chat/ |
Github开源地址(内附安装教程) | https://github.com/RocketChat/Rocket.Chat |
华为云安全组的官方文档
https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0140323157.html
以上是关于在华为云上自建聊天平台遇到的坑(开放端口)的主要内容,如果未能解决你的问题,请参考以下文章