宝塔/Linux下自动更新maccms到github原版的最新版

  • Post author:
  • Post category:linux


maccms 确实好用,但是难免会被发现一些漏洞,这时候跟随作者更新是最好的 选择了。这里以宝塔为例,在 /www/新建文件updateFromGITHUB.sh 代码在文末 修改

  1. 你的安装路径
  2. 缓存更新的url地址
  3. 后台登录名地址
  4. 其他权限或者内容 看文末就好

chmod +x /www/updateFromGITHUB.sh

然后计划任务添加执行脚本代码

sh /www/updateFromGITHUB.sh

时间选择每天一次 或者暂停 自己多关注作者的commits

https://github.com/magicblack/maccms10/commits/master

updateFromGITHUB.sh完整代码

#! /bin/bash
# 从github更新到最新版
# sh /www/updateFromGITHUB.sh

#安装目录
install_Dir="/www/wwwroot/你的maccms安装路径"
#缓存更新地址
updateCacheUrl="http://你后台定时任务的缓存更新地址/api.php/timming/index.html?enforce=1&name=cache"
#后台文件名
adminPHP="你的后台入口.php"

cd $install_Dir
rm -rf Temp_update
mkdir Temp_update
cd Temp_update
# 如果是境内地址 选择一个加速,境外直接用github
#wget -c https://github.com/magicblack/maccms10/archive/refs/heads/master.zip
wget -c https://gh.api.99988866.xyz/https://github.com/magicblack/maccms10/archive/refs/heads/master.zip
#解压
unzip  master.zip
cd  maccms10-master
#删除一些没用的文件
rm -rf .git*
cd ..
find maccms10-master -type f -name ".gitignore" -exec rm -rf {} \;
cd maccms10-master
rm -rf 说明文档
rm -rf install.php
rm -rf README.md
rm -rf robots.txt
rm -rf LICENSE
#保留相关设置
rm -rf ./application/database.php #数据库
rm -rf ./application/route.php #伪静态路由
rm -rf ./application/extra/maccms.php #基础设置
rm -rf ./application/extra/bind.php #资源库分类绑定
rm -rf ./application/extra/timming.php #定时任务
rm -rf ./application/extra/vodplayer.php #播放器配置
rm -rf ./application/extra/voddowner.php #下载配置
rm -rf ./application/extra/vodserver.php #视频服务器
rm -rf ./application/extra/quickmenu.php #后台自定义菜单
#后台管理入口
mv admin.php $adminPHP

#自定义后台标题 防止多站点管理混乱 这个自己修改把
sed -i 's/后台管理中心/我的测试管理中心/g'  ./application/lang/zh-cn.php
sed -i 's/超级控制台/我的测试控制台/g'  ./application/lang/zh-cn.php
sed -i 's/后台管理中心/我的测试管理中心/g'  ./application/lang/zh-cn.php
sed -i 's/超级控制台/我的测试控制台/g'  ./application/lang/zh-cn.php
#去掉登录页面相关的特征,防止被扫描
sed -i 's/Copyright by 苹果CMS内容管理系统/芭比Q/g'  ./application/lang/zh-cn.php
sed -i 's/免责声明/每天开心/g'  ./application/lang/zh-cn.php
sed -i 's/本程序开源且永久免费无任何内置数据,请在遵守当地法律的前提下使用,对用户在使用过程中的信息内容本程序不负任何责任!自由!平等!分享!开源!/ 开开心心 /g'  ./application/lang/zh-cn.php
sed -i 's/欢迎使用/你好呀/g'  ./application/lang/zh-cn.php
sed -i 's/\/\/www.maccms.la\//#/g'  ./application/admin/view/index/login.html
sed -i "s/maccms_copyright/偶买噶/g"  ./application/admin/view/index/login.html
#修改成html中文文件头 防止edge弹出提示,这个好像是作者疏忽
sed -i "s/\"en\"/\"zh-cn\"/g"  ./application/admin/view/index/login.html

#取消系统复制的别名
alias cp='cp -i'
unalias cp
#复制文件 并覆盖
cp  -rf ./ ../../
#恢复cp别名
alias cp='cp -i'
#删除临时目录
cd ../../
rm -rf Temp_update
#配置权限
chmod -R 777 ./*
chown -R www:www ./*

#更新缓存 只返回状态码
#curl $updateCacheUrl
echo $(curl -sIL -w "%{http_code}" -o /dev/null  $updateCacheUrl)

echo "更新完毕"



版权声明:本文为joyanhui原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。