项目地址
前端Sub-Web:https://github.com/CareyWang/sub-web
后端Subconverter:https://github.com/tindy2013/subconverter
https://github.com/MetaCubeX/subconverter
部署后端subconverter
#amd
wget https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_linux64.tar.gz
tar -zxvf subconverter_linux64.tar.gz
#arm
wget https://github.com/tindy2013/subconverter/releases/download/v0.7.2/subconverter_aarch64.tar.gz
tar -zxvf subconverter_aarch64.tar.gz
#vless
wget https://github.com/MetaCubeX/subconverter/releases/download/Alpha/subconverter_aarch64.tar.gz
tar -zxvf subconverter_aarch64.tar.gz
创建守护进程
vi /etc/systemd/system/subconverter.service
[Unit]
Description=A API For Subscription Convert
After=network.target
[Service]
Type=simple
ExecStart=/root/subconverter/subconverter
WorkingDirectory=/root/subconverter
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
要注意相关路径是否正确
systemctl daemon-reload
systemctl start subconverter
systemctl status subconverter
systemctl enable subconverter
现在访问http://服务器ip:25500
应该就可以看到已经部署成功了
宝塔创建站点suc.example.com 配置好 https 并反向代理到http://127.0.0.1:25500/
部署前端sub-web
安装Node.js
下文安装的是 lts 版本,安装其它版本请参考https://github.com/nodesource/distributions
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - &&\
sudo apt-get install -y nodejs
安装Yarn
npm install --global yarn
sub-web
git clone https://github.com/CareyWang/sub-web
cd sub-web
yarn install
yarn serve
访问http://服务器ip:8080
就能看到预览页面了
修改后端地址
vi /root/sub-web/src/views/Subconverter.vue
修改支持的类型
options: {
clientTypes: {
Clash: "clash",
ClashR: "clashr",
Surge2: "surge&ver=2",
Surge3: "surge&ver=3",
Surge4: "surge&ver=4",
V2Ray: "v2ray",
Trojan: "trojan",
ShadowsocksR: "ssr",
Mixed: "mixed",
Surfboard: "surfboard",
Quantumult: "quan",
QuantumultX: "quanx",
Loon: "loon",
Mellow: "mellow",
SS: "ss",
SSAndroid: "sssub",
ShadowsocksD: "ssd",
Auto: "auto",
},
修改后端域名
backendOptions: [{ value: “http://127.0.0.1:25500/sub?” }], 修改为backendOptions: [{ value: “https://suc.example.com/sub?” }],
(注意两个地方:域名为你刚才准备的后端域名,是 https 而非 http)
更换远程规则
因为这个版本更新以后,规则方面很少,经常用到的一些经典的 ACL4SSR 的规则并没有集成,大家可以看看,若是有,就不需要这样操作。
VPS找到 /root/sub-web/src/views/Subconverter.vue 文件,找到 remoteConfig: [
敲下回车,替换form之前的规则内容。
{
label: "通用",
options: [
{
label: "默认",
value: "https://raw.githubusercontent.com/Meilieage/webcdn/main/rule/Area_Media_NoAuto.ini"
},
{
label: "我的PC",
value: "https://raw.githubusercontent.com/renhongmeng/Subscriber/main/mypc.yaml"
},
{
label: "我的PHONE",
value: "https://raw.githubusercontent.com/renhongmeng/Subscriber/main/myphone.yaml"
},
{
label: "默认(自动测速)",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_AdblockPlus.ini"
},
{
label: "默认(索尼电视专用)",
value: "https://raw.githubusercontent.com/youshandefeiyang/webcdn/main/SONY.ini"
},
{
label: "默认(附带用于 Clash 的 AdGuard DNS)",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/default_with_clash_adg.yml"
},
{
label: "ACL_全分组 Dream修改版",
value: "https://raw.githubusercontent.com/WC-Dream/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_Dream.ini"
},
{
label: "ACL_精简分组 Dream修改版",
value: "https://raw.githubusercontent.com/WC-Dream/ACL4SSR/master/Clash/config/ACL4SSR_Mini_Dream.ini"
},
{
label: "emby-TikTok-流媒体分组-去广告加强版",
value: "https://raw.githubusercontent.com/justdoiting/ClashRule/main/GeneralClashRule.ini"
},
{
label: "流媒体通用分组",
value: "https://raw.githubusercontent.com/cutethotw/ClashRule/main/GeneralClashRule.ini"
}
]
},
{
label: "ACL规则",
options: [
{
label: "ACL_默认版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online.ini"
},
{
label: "ACL_无测速版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoAuto.ini"
},
{
label: "ACL_去广告版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_AdblockPlus.ini"
},
{
label: "ACL_多国家版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_MultiCountry.ini"
},
{
label: "ACL_无Reject版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoReject.ini"
},
{
label: "ACL_无测速精简版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_NoAuto.ini"
},
{
label: "ACL_全分组版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full.ini"
},
{
label: "ACL_全分组谷歌版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_Google.ini"
},
{
label: "ACL_全分组多模式版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_MultiMode.ini"
},
{
label: "ACL_全分组奈飞版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_Netflix.ini"
},
{
label: "ACL_全分组无测速版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_NoAuto.ini"
},
{
label: "ACL_精简版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini.ini"
},
{
label: "ACL_去广告精简版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_AdblockPlus.ini"
},
{
label: "ACL_Fallback精简版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_Fallback.ini"
},
{
label: "ACL_多国家精简版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_MultiCountry.ini"
},
{
label: "ACL_多模式精简版",
value: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_MultiMode.ini"
}
]
},
{
label: "Github搜集规则",
options: [
{
label: "常规规则",
value: "https://raw.githubusercontent.com/flyhigherpi/merlinclash_clash_related/master/Rule_config/ZHANG.ini"
},
{
label: "酷酷自用",
value: "https://raw.githubusercontent.com/xiaoshenxian233/cool/rule/complex.ini"
},
{
label: "分区域故障转移",
value: "https://raw.githubusercontent.com/flyhigherpi/merlinclash_clash_related/master/Rule_config/ZHANG_Area_Fallback.ini"
},
{
label: "分区域自动测速",
value: "https://raw.githubusercontent.com/flyhigherpi/merlinclash_clash_related/master/Rule_config/ZHANG_Area_Urltest.ini"
},
{
label: "分区域无自动测速",
value: "https://raw.githubusercontent.com/flyhigherpi/merlinclash_clash_related/master/Rule_config/ZHANG_Area_NoAuto.ini"
},
{
label: "OoHHHHHHH",
value: "https://raw.githubusercontent.com/OoHHHHHHH/ini/master/config.ini"
},
{
label: "CFW-TAP",
value: "https://raw.githubusercontent.com/OoHHHHHHH/ini/master/cfw-tap.ini"
},
{
label: "lhl77全分组(定期更新)",
value: "https://raw.githubusercontent.com/lhl77/sub-ini/main/tsutsu-full.ini"
},
{
label: "lhl77简易版(定期更新)",
value: "https://raw.githubusercontent.com/lhl77/sub-ini/main/tsutsu-mini-gfw.ini"
},
{
label: "ConnersHua 神机规则 Outbound",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/connershua_new.ini"
},
{
label: "ConnersHua 神机规则 Inbound 回国专用",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/connershua_backtocn.ini"
},
{
label: "lhie1 洞主规则(使用 Clash 分组规则)",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/lhie1_clash.ini"
},
{
label: "lhie1 洞主规则完整版",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/lhie1_dler.ini"
},
{
label: "eHpo1 规则",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/ehpo1_main.ini"
},
{
label: "品云专属配置(仅香港区域分组)",
value: "https://raw.githubusercontent.com/Mazeorz/airports/master/Clash/Examine.ini"
},
{
label: "品云专属配置(全地域分组)",
value: "https://raw.githubusercontent.com/Mazeorz/airports/master/Clash/Examine_Full.ini"
},
{
label: "nzw9314 规则",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/nzw9314_custom.ini"
},
{
label: "maicoo-l 规则",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/maicoo-l_custom.ini"
},
{
label: "DlerCloud Platinum 李哥定制规则",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/dlercloud_lige_platinum.ini"
},
{
label: "DlerCloud Gold 李哥定制规则",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/dlercloud_lige_gold.ini"
},
{
label: "DlerCloud Silver 李哥定制规则",
value: "https://gist.githubusercontent.com/tindy2013/1fa08640a9088ac8652dbd40c5d2715b/raw/dlercloud_lige_silver.ini"
}
]
},
{
label: "各大机场规则",
options: [
{
label: "咸鱼",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/customized/xianyu.ini"
},
{
label: "CNIX",
value: "https://raw.githubusercontent.com/Mazeorz/airports/master/Clash/SSRcloud.ini"
},
{
label: "Nirvana",
value: "https://raw.githubusercontent.com/Mazetsz/ACL4SSR/master/Clash/config/V2rayPro.ini"
},
{
label: "V2Pro",
value: "https://raw.githubusercontent.com/Mazeorz/airports/master/Clash/V2Pro.ini"
},
{
label: "史迪仔-自动测速",
value: "https://raw.githubusercontent.com/Mazeorz/airports/master/Clash/Stitch.ini"
},
{
label: "史迪仔-负载均衡",
value: "https://raw.githubusercontent.com/Mazeorz/airports/master/Clash/Stitch-Balance.ini"
},
{
label: "Maying",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/customized/maying.ini"
},
{
label: "NyanCAT",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/customized/nyancat.ini"
},
{
label: "SoCloud",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/customized/socloud.ini"
},
{
label: "ARK",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/customized/ark.ini"
}
]
},
{
label: "特殊",
options: [
{
label: "NeteaseUnblock",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/special/netease.ini"
},
{
label: "Basic",
value: "https://raw.githubusercontent.com/SleepyHeeead/subconverter-config/master/remote-config/special/basic.ini"
}
]
}
]
},
修改默认后端配置
vi /root/sub-web/.env
VUE_APP_PROJECT = "https://github.com/CareyWang/sub-web"
VUE_APP_BACKEND_RELEASE = "https://github.com/tindy2013/subconverter/releases"
VUE_APP_SUBCONVERTER_REMOTE_CONFIG = "https://raw.githubusercontent.com/tindy2013/subconverter/master/base/config/example_external_config.ini"
# API 后端
VUE_APP_SUBCONVERTER_DEFAULT_BACKEND = "https://suc.example.com"
# 短链接后端
VUE_APP_MYURLS_DEFAULT_BACKEND = "https://suo.example.com"
# 文本托管后端
VUE_APP_CONFIG_UPLOAD_BACKEND = "https://suc.example.com"
# 页面配置
VUE_APP_USE_STORAGE = true
VUE_APP_CACHE_TTL = 86400
编译部署
宝塔创建站点sub.example.com并配置好 https
执行yarn build
将生成的 dist 目录下所有文件移动到站点sub.example.com根目录就部署成功了
0 Comments