nciaer 发表于 2019-6-27 15:47:19

屏蔽phpcms后台的update.v9.phpcms.cn网址请求

现在phpcms后台一直会用js的方式请求一个update.v9.phpcms.cn的网址的js文件,据说是收集信息的,但是现在这个网址挂了,导致网站后台有时候会加载很慢。怎么办呢?直接删掉它。

但是没那么容易,这行代码可不好找,百度之后,找到了,在phpcms/modules/admin/functions/admin.func.php文件里:
function system_information($data) {
        $update = pc_base::load_sys_class('update');
        $notice_url = $update->notice();
        $string = base64_decode('PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoIiNtYWluX2ZyYW1laWQiKS5yZW1vdmVDbGFzcygiZGlzcGxheSIpOzwvc2NyaXB0PjxkaXYgaWQ9InBocGNtc19ub3RpY2UiPjwvZGl2PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ik5PVElDRV9VUkwiPjwvc2NyaXB0Pg==');
        echo $data.str_replace('NOTICE_URL',$notice_url,$string);
}


string字符串其实就是在html文档里追加那个js代码(加粗部分),如果直接删掉这个加粗部分,你会发现后台首页空白了。其实是因为这个js代码前面还有个显示后台首页的作用。

后台首页模板文件在phpcms/modules/admin/templates/main.tpl.php,其中id=main_frameid里有个display样式,这个样式是display:none,默认情况当然不会显示任何内容了。而追加的哪个js代码是这样的:
<script type="text/javascript">$("#main_frameid").removeClass("display");</script><div id="phpcms_notice"></div><script type="text/javascript" src="NOTICE_URL"></script>
加粗部分就是清除这个display类的。


这应该也算是phpcms给你绕了弯,不让你轻易去掉那个js文件请求。


最后就是改system_information函数,直接输出data变量,然后把main.tpl.php模板里的id="main_frameid"元素的display类去掉。完事。


页: [1]
查看完整版本: 屏蔽phpcms后台的update.v9.phpcms.cn网址请求