X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存

准备工作

  • VPS 一台,提前重置好主流的操作系统,推荐 CentOS ≥ 7,我这里用的是搬瓦工的VPS
  • 域名一个,托管在Cloudflare并做好解析
  • 自行安装 BBR 加速之类的软件

安装宝塔面板

第一步,更新系统并重启
yum update -y #更新系统
  
reboot #重启系统
X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
第二步,安装宝塔面板

(PS:强烈推荐大家使用 CentOS 系统安装宝塔面板,其他系统也可以,相关安装命令请访问 宝塔官网)

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

看到Do you want to install Bt-Panel to the /www directory now?(y/n)提示后输入英文字母y后自动安装。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

宝塔安装完毕以后,根据提示登录宝塔面板后台,可按照自己的需求安装所需的环境插件。推荐按下图选择。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
第三步,部署网站

我这边选择用WORDPRESS建站。

找到软件商店——一键部署——一键部署 WordPress

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

输入域名后提交即可

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

部署成功后会有提示,记住数据库名用户密码,点击访问站点。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

请自行的完成网站数据库、站点名、用户名和密码等相关的设置。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
为域名申请证书

找到网站设置界面,点击SSL为网站申请证书,强制开启 HTTPS。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

至此,网站已经可以使用 https 访问了

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

安装 X-ui 可视化面板

开始搭建

复制官方推荐的脚本:

bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)
  • 将上述代码复制到你的VPS内执行,如果提示未安装curl工具,请先安装curl工具

最新的版本需要自己根据提示输入账号密码和端口号,老版本默认端口为65432,这边我改成了54238.

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
放行宝塔面板的相关端口

找到宝塔面板 —— 安全 —— 防火墙,放行面板的默认端口54238,备注说明随意填。如果不放行端口,X-UI后台无法打开。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
访问并设置X-UI管理面板

在浏览器中输入VPS的IP地址+端口号76.320.107.136:54238 ,用户名 admin ,密码 admin登录系统

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

点击 面板设置添加面板url根路径保存配置,点击重启面板

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

如果面板监听端口后,一定记得去 宝塔面板 —— 安全 —— 防火墙 里面去放行相关的端口。步骤同上

重启面板后我们需要在浏览器中输入VPS的IP地址+端口号/面板URL路径登录后台76.320.107.136:54238/dmin

增加科学上网节点

点击入站列表|点击+号|添加节点 配置如下

传输选择 ws 路径根据自己情况输入,我这里是/cplc端口自定义,不要开启 TLS,其他默认即可。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET
配置 Nginx 反向代理

找到网站设置 界面,找到配置文件,在最后一行的 } 符号前面,新起几行,插入以下反代代码,可以对比下图。

location ^~ 面板url根路径 {
    proxy_pass http://127.0.0.1:面板监听端口/面板url根路径;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location 节点路径 {
        proxy_redirect off;
        proxy_pass http://127.0.0.1:节点端口;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $http_host;
        proxy_read_timeout 300s;
        # Show realip in v2ray access.log
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
  
X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

设置完毕以后,在宝塔面板里面重新启动 Nginx,是的配置生效。

X-UI+宝塔Nginx反代教程:让X-UI面板与网站共存 - 科学上网 IYIO.NET

至此,你可以使用 https://cplc.monster/dmin/ 来访问你的 Xray 管理面板了。

注意事项:

使用这种反代以后,在客户端使用的时候,需要自行更改三个地方:

端口号: 443 、 路径:检查是否带 / 、TLS 设置 :开启