宝塔在 7.8 版本加入了强制绑定账户,页面元素的限制倒也还好,很简单就能去除,可问题是软件商店的接口加入了登录校验,没登录的情况下获取不到软件列表自然也就无法安装软件了,长远看来用户绑定是必不可少了。当时只是一个强制绑定问题,可万万没想到升级到 7.9 版本后,首页加入了广告:对专业版及其软件的强制推荐,这就有点贴脸输出了,真就恶心人,所以就研究了一下它的页面文件,好在这部分没有加密所以倒可以去掉。
下面是本次使用到的环境:
- BT:v7.9.0
- OS:Ubuntu 20.04.4 LTS x86_64(Py3.7.9)
一、页面调整
如下图所示,宝塔开始在首页推荐自家的付费产品了,明晃晃的放在首页。
1. 去除首页广告
- 文件:/www/server/panel/BTPanel/static/js/public.js
① 搜索 get_pay_status
函数,直接修改返回值。
//return { advanced: advanced, is_pay:is_pay, end_time:end_time }; |
② 搜索 get_product_type
函数,在函数调用处 product_recommend
的 init
方法,直接 return
。
init:function(callback){ |
- 文件:/www/server/panel/BTPanel/static/js/index.js
① 搜索 // 推荐安装软件,清空/注释 try 块。
// 推荐安装软件 |
② 搜索 setTimeout(function () { _this.get_index_list() }, 400)
,取消这部分注释。
③ 搜索 product_recommend.init
函数,注释如下内容。
product_recommend.init(function(){ |
2. 去除没软用的页脚版权提示
- 文件:/www/server/panel/BTPanel/templates/default/layout.html
① 搜索 class="footer bgw"
,将整段删除或注释。
<a style="display: none;" id="defaultPath"></a> |
3. 去除首页邀请奖励
- 文件:/www/server/panel/BTPanel/templates/default/index.html
① 搜索 https://www.bt.cn/invite
将此部分删除或注释;
<div class="position f12 c6 pull-left" style="background:none;padding-left:15px"> |
② 额外的还可以把顶栏其他项目删除或注释。
<span class="pull-right f12 c6" style="line-height:52px; margin-right:15px"> |
4. 去除软件商店的顶栏推广
- 文件:/www/server/panel/BTPanel/templates/default/soft.html
① 搜索 <div id="updata_pro_info"></div>
并删除或注释。
- 文件:/www/server/panel/BTPanel/static/js/soft.js
① 搜索 set_soft_tips
清空函数内容;② 搜索 get_dep_list
清空函数内容。
/** |
5. 隐藏侧栏顶部 IP 地址显示
- 文件:/www/server/panel/BTPanel/templates/default/layout.html
① 搜索 class="mypcip"
,将 {{session['address']}}
替换成你想修改的内容。
6. 修改安全入口校验失败的默认内容
- 文件:/www/server/panel/BTPanel/templates/default/autherr.html
① 自行替换你想要的内容。
7. 修改登录页面
- 文件:/www/server/panel/BTPanel/templates/default/login.html
① 去掉傻 logo:搜索 class="login-images"
,删除或注释对应内容。
② 去掉扫码登录:搜索 class="entrance"
,删除或注释对应内容;
③ 去掉变量调用:搜索 切换二维码,修改成 var entrance = {}
。
④ 去掉忘记密码:搜索 class="forget_pwd"
,删除或注释对应内容。
8. 避免潜在的缓存
利用 VS Code 在 /www/server/panel
目录下搜索文本:
?version={{g['version']}}&repair={{data['js_random']}}
,
替换成 ?version=当前时间戳
。
9. 最终效果图
二、额外
1. 宝塔面板反代访问时去除端口号
proxy_pass "http://127.0.0.1:PORT"; |
- 反代域名监听 80 和 443 端口。
- 云防火墙关闭面板端口,服务器开启面板端口。
- Cloudflare 添加域名解析,a 记录到主机 IP。
2. 视频操作
录了一个视频操作过程在哔哩哔哩中,可以查看以上过程:
三、其它
关于面板强制绑定账户,看起来更像是迫于监管的压力,现行制度下,手机号 ≈ 人,而宝塔账户强制手机号注册,所以绑定用户 ≈ 实名认证,真就很扯淡。