如何通过宝塔面板配置域名访问客服系统(避免使用IP+端口)
背景介绍
当我们启动客服服务后,通常可以通过IP地址:8081
(默认端口)的形式访问服务。虽然这种方式可以验证服务是否正常运行,但在实际生产环境中,我们希望:
- 通过域名访问,而不是IP地址
- 不需要在URL中显示端口号
- 确保WebSocket功能正常工作(用于实时通知)
- 联系微信:haotsh
- 演示网址:gofly.v1kf.com
配置步骤
1. 准备工作
确保已经:
- 解析了一个域名到服务器IP
- 安装了宝塔面板
- 客服服务已在8081端口正常运行
2. 配置反向代理(推荐使用伪静态方式)
不推荐直接使用宝塔面板的”反向代理”功能,因为:
- 默认配置缺少WebSocket支持的关键指令
- 会导致实时通知功能失效
推荐做法:将反向代理配置放在”伪静态”设置中:
- 登录宝塔面板
- 找到对应网站的设置
- 进入”伪静态”配置页面
- 粘贴以下配置代码:
location / {
proxy_pass http://127.0.0.1:8081;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
3. 关键配置说明
这段配置中有两个关键指令支持WebSocket:
proxy_http_version 1.1
– 使用HTTP/1.1协议
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
这两行专门用于支持WebSocket协议升级
如果没有这些配置,虽然基本服务可以访问,但实时消息通知功能将无法工作。
4. 保存并测试
- 保存伪静态配置
- 通过域名访问测试(不带端口号)
- 验证实时通知功能是否正常
常见问题
Q:为什么不用宝塔自带的”反向代理”功能?
A:宝塔默认的反向代理配置缺少WebSocket支持指令,会导致实时功能失效。手动在伪静态中添加配置更为可靠和灵活。
Q:配置后实时消息仍不工作怎么办?
A:检查:
- 是否确实添加了WebSocket支持指令
- 防火墙是否放行了8081端口
- 客服服务是否正常运行
总结
通过这种方式配置后:
- 可以使用干净的域名访问(无端口号)
- WebSocket功能完整支持
- 实时消息通知正常工作
- 配置更简洁易于维护
记住,在配置域名访问时,不要”想当然”地简单设置反向代理,确保包含WebSocket支持的关键指令,这是保证客服系统全功能正常工作的关键。
十年开发经验程序员,离职全心创业中,历时三年开发出的产品《唯一客服系统》
一款基于Golang+Vue开发的在线客服系统,软件著作权编号:2021SR1462600。一套可私有化部署的网站在线客服系统,编译后的二进制文件可直接使用无需搭开发环境,下载zip解压即可,仅依赖MySQL数据库,是一个开箱即用的全渠道在线客服系统,致力于帮助广大开发者/公司快速部署整合私有化客服功能。
开源地址:唯一客服(开源学习版)
官网地址:唯一客服官网