CloudFlare使用api修改域名解析NS为第三方NS

官方文档 https://developers.cloudflare.com/api/operations/registrar-domains-update-domain

修改方法

curl --request PUT \
  --url https://api.cloudflare.com/client/v4/accounts/账户ID/registrar/domains/2dan.cc\
  --header 'Content-Type: application/json' \
  --header 'X-Auth-Email: [email protected]' \
  --header 'X-Auth-Key: xa3a22e7388ca555827e78e1e8hca7f22b280' \
  --data '{
  "auto_renew": true,
  "locked": false,
  "name_servers": [
    "mussel.dnspod.net",
    "crystal.dnspod.net"
  ],
  "privacy": true
}'

- 阅读剩余部分 -

Cloudflare使用api自由切换SSL证书颁发机构

介绍

Cloudflare目前Free计划提供四种证书
DigiCert CF默认签发的证书,兼容性更广,证书链也更短,只有一级中间证书,证书为期一年
Let’s Encrypt 证书为其三个月更换,有被墙的黑历史,慎用
Google Trust Services 其三个月更换
Sectigo 这个仅作为备份,不能主动启用,在控制台使用应该是随机分配的,没办法指定。

切换方法

curl -X PATCH "https://api.cloudflare.com/client/v4/zones/你的域名区域ID/ssl/universal/settings" \
     -H "X-Auth-Email: 你的CF邮箱" \
     -H "X-Auth-Key: 你的APIKEY" \
     -H "Content-Type: application/json" \
     --data '{"enabled":true,"certificate_authority":"digicert"}'

- 阅读剩余部分 -

Linux自动备份网站文件和MySQL数据到远程服务器

本地生成备份

创建备份文件夹

mkdir -p /home/bakup

创建本地备份脚本文件

vi /root/bakup.sh

写入:

#打包网站文件
tar zcvpf /home/backup/blog-`date +%Y%m%d%H%M`.tar.gz /home/wwwroot/2dan.cc/* --exclude={'list','view','news'}

#导出数据库至独立文件
databases=`mysql --user=root -p123456 -e "show databases;" | grep -Ev "(Database|mysql|information_schema|performance_schema)"`
for db in $databases; do
  mysqldump -uroot -p123456 --lock-tables=false --databases $db | gzip > "/home/bakup/$db-`date +%Y%m%d%H%M`.sql.gz"
done
#删除3天前的备份
find /home/backup/  -name "*.gz" -type f -ctime  +3 | xargs rm -rf

- 阅读剩余部分 -

SeaCMS后台删除多余图片

一、编辑/admin/templets/admin_datarelate_checkpic.htm文件,在合适位置插入:

<input type="button" class="btn" value="删除多余视频图片" onClick="if(confirm('注意:该操作大量占用系统资源,请务必在系统空闲时执行')){location.href='?action=sumitcheck';}else{return false}">
<input type="button" class="btn" value="删除多余新闻图片" onClick="if(confirm('注意:该操作大量占用系统资源,请务必在系统空闲时执行')){location.href='?action=sumitcheck&table=news';}else{return false}">

二、编辑/admin/admin_datarelate.php文件第602行,将以下内容注释掉

exit('危险操作,此功能禁用!');

SeaCMS筛选页连载状态链接错误

V12.8版本筛选页连载状态链接错误,完结和连载中都是state=l
解决:
编辑/include/link.func.php文件第566行,找到:

case "state":    
            if($value=='全部')
            {
                $Link="/".$GLOBALS['cfg_cmspath']."search.php?".preg_replace("/\&?state\=[^\&]*/i","",$schwhere);
            }
            elseif($value=='完结')
            {
            $Link="/".$GLOBALS['cfg_cmspath']."search.php?".preg_replace("/\&?state\=[^\&]*/i","",$schwhere)."&state=w";
            }
            else
            {
            $Link="/".$GLOBALS['cfg_cmspath']."search.php?".preg_replace("/\&?state\=[^\&]*/i","",$schwhere)."&state=l";
            }
        break;

修改为:

case "state":    
            if($value=='全部')
            $Link="/".$GLOBALS['cfg_cmspath']."search.php?".preg_replace("/\&?state\=[^\&]*/i","",$schwhere);
            else
            $Link="/".$GLOBALS['cfg_cmspath']."search.php?".preg_replace("/\&?state\=[^\&]*/i","",$schwhere)."&state=".urlencode($value);
        break;