socket.io部署到服务器
体验地址:聊天室
我们用的是,宝塔面板
1.首先安装我们需要的控件,
【软件商店】安装【Node.js版本管理器】 建议安装的node版本和本地电脑版本一致
安装成功,点击设置,安装和我们本地node版本一致的就行
2.上传项目文件
在宝塔中,我们自己新建server文件夹和socket文件夹就行【文件夹名字自己随便,最好不要用中文】
注意,服务器端只需要上传代码就行,mode_modules 不需要上传,我们创建node项目时候,会自动安装node_modules
客户端我们用的vue2,先npm run build 打包 然后把dist文件内容上传就行
3.开启nginx (如果网站能正常使用,并打开,则跳过此步骤)
找到【宝塔】- 【终端】
(1)先查看服务器是否有nginx
1 | whereis nginx |
如果出现如下界面,则代表未安装nginx,否则可跳过本节。
(2)安装nginx
命令如下:
1 | yum install -y nginx |
如果未配置yum源的,可参考网上如何使用yum安装nginx,出现如下界面则代表安装完成。
(3)查看nginx安装目录
命令如下:
1 | whereis nginx |
如果不能全局使用nginx指令,那么可能是环境变量没有配置,具体配置方法可参考网上,这里不做过多解释。
启动nginx
服务器安装号nginx后,我们尝试启动它、
命令如下:
1 | nginx |
直接输入nginx即可启动服务,打开浏览器,访问服务器地址,出现如下界面则代表启动成功。
4.添加node项目
找到【宝塔】- 【网站】 - 【Node项目】- 【添加Node项目】
5.查看端口是否放行
找到【宝塔】- 【安全】
6.打开项目启动
(1)打开客户端界面,登录用户,发现报错
(2)修改客户端代码
(3)然后我们运行代码,发现还是报错
然后我们测试,http://59.110.225.30:3001
和 https://59.110.225.30:3001
结果发现
是因为我们没有配置59.110.225.30 的ssl导致的,但是配置ip的ssl要花钱购买证书,
(4)然后想到创建一个【子域名】,然后生成免费证书
(5)在【宝塔】-【Node项目】配置刚生成的ssl
添加域名
打开外网映射
配置ssl证书
把【子域名】生成的免费证书,添加进去
(6)重新修改客户端代码
客户端打包升级到服务器
打开客户端,界面效果
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 祝我好运!