前言
很多朋友手里其实只有一台 VPS,但这台 VPS 往往不只是用来搭建节点。
有些人想用它搭一个博客,有些人想放一个导航页、下载页、项目介绍页,也有些人还想同时运行 3x-ui 面板、反向代理、订阅服务,甚至后续还要部署一些自己的小工具。
这时候问题就来了:一台 VPS 上面既要建站,又要搭建节点,还要访问面板,到底应该怎么规划才比较合理?
如果直接把节点开在一个随机端口上,虽然简单,但是端口会直接暴露在公网。3x-ui 面板如果也直接通过 IP 加端口访问,同样不太合适。服务器上如果还跑着网站,80、443、面板端口、节点端口混在一起,后期维护也会越来越乱。
所以这篇文章要分享的,就是一种更适合 “一台 VPS 多用途” 的搭建方式。
我们使用宝塔 / Nginx 作为前置,让 Nginx 统一接管 80 和 443 端口,然后通过不同的域名和路径,把正常网站、3x-ui 面板、VLESS + XHTTP 节点分开处理。
视频观看
友情提示
本方案使用 VLESS + XHTTP + TLS。相比传统 VLESS + WS + TLS,XHTTP 是更新的 HTTP 传输方式,更适合 Nginx / 宝塔前置反代,也更适合网站、面板、节点共用 443 的场景。
如果单纯追求协议层面的隐蔽性,VLESS + Reality + Vision 仍然是更强的方案;但 Reality 不适合直接通过宝塔普通 HTTP 反向代理实现。若必须使用宝塔 / Nginx 作为前置,VLESS + XHTTP + TLS 会是更合理的选择。
技术原理
最终实现效果
myss.us 自己的博客(该方案不影响已有的宝塔网站或是服务) 3x.myss.us 3x-ui 面板入口 vm.myss.us VLESS + XHTTP + TLS 节点入口
最终访问的方式
https://myss.us 正常博客网站或是其他的服务 https://3x.myss.us/cdn-api 3x-ui 面板,不再暴露原始面板端口 https://vm.myss.us 正常网站或静态页面 https://vm.myss.us/自定义路径 VLESS + XHTTP 节点入口
整体架构
访问主站: 浏览器 → https://myss.us:443 → 宝塔 / Nginx → 正常网站、服务 访问面板: 浏览器 → https://3x.myss.us:443/cdn-api/panel/ → 宝塔 / Nginx → 127.0.0.1:55440 → 3x-ui 使用节点: 客户端 → https://vm.myss.us:443/自定义路径 → 宝塔 / Nginx → 127.0.0.1:28888 → Xray VLESS + XHTTP
准备工作
1. VPS 一台,重置好主流的操作系统,推荐 Debian12(本视频演示 VPS 来自 搬瓦工 CN2 GIA ECOMMERCE )
2. 域名一个,并托管到 CloudFlare 。购买地址:点击访问 (1.88刀/年 起 选择 .cyou 会更便宜)新用户 1 美元优惠券:v2rayssr.com 视频教程:点击访问
3、支持 XHTTP 的客户端,例如 v2rayN、Clash Verge Rev / Mihomo
域名解析
根据自己的需求做好域名的解析,代理状态关闭(关闭小云朵),除非你知道你在干什么,否则就关闭!
今天演示域名如下:
myss.us # 自己新建的博客,或是已经存在的博客、服务 3x.myss.us # 3x-ui 面板入口 vm.myss.us # VLESS + XHTTP + TLS 节点入口
安装宝塔并配置
使用 SSH 连接 VPS
在终端中使用如下命令通过 SSH 连接自己的 VPS ,MacOS 和 Windows 是一样的命令
# 如果 SSH 端口是默认的 22,则使用 ssh root@你的服务器IP # 如果 SSH 端口不是默认的 22,例如端口是 2200,则使用 ssh root@你的服务器IP -p 2200
开启 BBR 加速
# 开启 BBR echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p # 验证 BBR 是否开启成功 sysctl net.ipv4.tcp_congestion_control lsmod | grep bbr
安装 BT 面板,若是已经安装,请跳过,推荐宝塔版本: V10.0.0
# 稳定版:10.0.0( 纯净版,简洁免绑定账号,无付费广告 ) # 推荐公司、企事业单位及生产环境使用,特别注重安全和稳定性,只修 BUG,不加新功能 # Debian 宝塔官方安装代码 wget -O install.sh https://download.bt.cn/install/installStable.sh && bash install.sh ed8484bec
根据自己的硬件以及建站的需求安装相关的插件,必备插件 Nginx。
添加站点,设置自己的主域名 myss.us 为博客网站。
点击网站设置,选择 SSL – Let’s Encrypt,我们为域名申请证书,选择 DNS 验证(支持通配符),这样更方便管理证书!

手动为其解析 TXT 记录,完成以后点击验证!申请泛域名证书(有时候会无响应,多刷新几次!)

按照视频演示,继续配置余下的两个域名,强制开启 HTTPS 访问:vm.myss.us 节点连接 , 3x.myss.us 面板访问

安装 3X-UI 面板
安装过程可以参考 2026最新VPS自建节点搭建教程!科学上网翻墙从零开始,VPS线路详解!VLESS+Reality,搬瓦工CN2 GIA实测8K/奈飞4K,V2RayN与Clash配置全流程,小白保姆级教程!
# 中文版安装命令 bash <(curl -fsSL https://raw.githubusercontent.com/V2RaySSR/3x-ui-cn-installer/main/install-cn.sh)
记住自定义的端口号(后面需要使用),在选手 SSL 证书的时候,我们需要自定义 SSL 证书,选择 3,并填入自己的 主域名 以及证书秘钥的路径

记录下面的登录信息
═══════════════════════════════════════════
面板安装完成!
═══════════════════════════════════════════
用户名: BISrVTzuUH
密码: knzBP1DB4r
端口: 55440
WebBasePath: QPAJbrncsbCGZ2KM5x
访问地址: https://myss.us:55440/QPAJbrncsbCGZ2KM5x
API Token:
═══════════════════════════════════════════
⚠ 重要:请安全保存这些登录信息!
⚠ SSL 证书:已启用并配置
Start migrating database...
Migration done!
在解压文件中找到 x-ui.service.debian,正在安装...
正在设置 systemd 单元...
x-ui v2.9.4 安装完成,当前正在运行...
设置 UI 面板反代
回到宝塔面板,点击 面板域名 的设置,为其设置反代,反代参数如下()
代理名称:随意 目标 URL:https://127.0.0.1:55440 (55440 是刚才自定义的 3X-UI 的端口号) 发送域名:3x.myss.us (填写规划好的 UI 面板的域名)

现在可以登录我们的 3X-UI 面板,并更新 Xray 版本。登录地址为:https://3x.myss.us/QPAJbrncsbCGZ2KM5x
(后面的一串是我们的 WebBasePath 路径,在面板安装完成信息里面有)
搭建节点
我们来到入站列表,按照 演示视频 的示范填写相关的参数,安全 设置为 无,以下图片仅为参考

对节点进行反代
回到宝塔面板,打开 节点域名 的网站设置,添加反向代理
代理名称:vm-xhttp 目标 URL:http://127.0.0.1:28888 (28888 为节点的端口) 发送域名:$http_host
完成以后,再次来到反向代理的 配置文件,替换如下配置:()
#PROXY-START
#下面的 cdn-data,为节点的自定义路径,请务必替换为自己的路径
location ^~ /cdn-data {
proxy_pass http://127.0.0.1:28888;
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_connect_timeout 60s;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
proxy_buffering off;
proxy_request_buffering off;
proxy_cache off;
}
#PROXY-END
至此,节点创建完毕,我们在 UI 面板中导出链接
客户端使用演示
把节点导入到 V2RayN 以后,我们需要手动填写 SNI 以及指纹。

若是需要完整链接导入到其他客户端,或是需要后续进行节点转换的,可以使用下面的节点模板自行修改,具体方法请看 演示视频
# 请自行更换 UUID、域名、自定义路径、节点名字 vless://UUID@域名:443?type=xhttp&encryption=none&path=%2F自定义路径&host=域名&mode=auto&x_padding_bytes=100-1000&extra=%7B%22xPaddingBytes%22%3A%22100-1000%22%7D&security=tls&sni=域名&fp=chrome#节点名称
后记
到这里,整个 VLESS + XHTTP + TLS 的搭建流程就完成了。
这套方案的重点并不是单纯 “能不能连上”,而是把网站、面板、节点入口这几部分合理地分开管理:
正常网站走宝塔 / Nginx 3x-ui 面板通过反代隐藏原始端口 Xray 入站只监听本机端口 客户端最终通过 443 端口连接节点
需要注意的是,VLESS + XHTTP + TLS 并不是 VLESS + Reality + Vision 的替代品,它们适合的场景不完全一样。
如果你追求的是 Reality 那种协议层面的伪装能力,那么 VLESS + Reality + Vision 仍然是非常强的方案。但如果你的目标是使用宝塔 / Nginx 作为前置,让网站、面板、节点都统一走 443,并且方便和现有网站共存,那么 VLESS + XHTTP + TLS 会是更合理的选择。
本方案里有几个关键点一定不要忽略:
1. Xray 入站监听地址建议填写 127.0.0.1 2. Xray 本地入站安全选择 “无” 3. 客户端连接时安全选择 TLS 4. 宝塔反代路径、3x-ui 路径、客户端路径必须完全一致 5. 反代缓存建议关闭 6. 3x-ui 面板端口和 Xray 本地端口不要直接暴露公网
另外,3x-ui 的 External Proxy 可以帮助我们修正导出链接里的外部域名、端口和 TLS 信息,但不同版本的 3x-ui 导出结果可能不完全一样。导入客户端以后,建议重点检查 SNI、Fingerprint、路径、端口和 TLS 是否正确。
最后还是那句话:自建节点的稳定性,不只取决于协议本身,也和 VPS 线路、机房质量、晚高峰拥堵、域名解析、证书配置、客户端内核版本都有关系。协议只是其中一部分,线路和配置同样重要。
如果你只是想快速搭建一个节点,Reality 会更简单直接;如果你想在宝塔环境下同时管理网站、面板和节点,那么这篇文章的 VLESS + XHTTP + TLS 方案会更适合长期维护。










