为宝塔面板设置域名的另一种思路(Nginx反代)

2022年3月9日

问题

1. 按正常方法设置域名后无法再通过 IP 访问

2. 有时候设置域名,无法访问(原因未知)

解决方法

通过反向代理实现IP和域名都可以正常访问

1. 第一步,先添加一个纯静态的站点;

2. 然后添加反向代理,如下图:

3. 完成2的操作后就可以通过域名访问宝塔面板了。但单是这样还是有问题的,这个时候发现 web 版终端无法连接了,通过 console 发现原来无法连接 wss 了,得知还需要反代 websocket:

修改站点的配置文件

# 宝塔 webssh
upstream websocket {
  # 假设是 8888 端口
  server 127.0.0.1:8888;
}

修改反代里的配置文件

# wss协议转发, 宝塔 web ssh 反代
location /webssh {
  # websocket 其实就是上面设置的 upstream websocket
  proxy_pass http://websocket;
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "Upgrade";
}

至此,宝塔面板可以通过域名进行访问,且 web 版终端也可以正常使用

小鑫

写写代码, 掉掉头发。

文章评论