首页
关于我们
友链链接
壁纸下载
更多
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
IP定位
Search
1
[Win DD包] wes7-x86-cn-精简,安装后仅占用1.55G存储空间
25,592 阅读
2
v2rayN基础使用教程、配置说明、添加订阅、路由选择
10,932 阅读
3
保姆级教程!甲骨文ARM DD成Debian10并升级内核成5.10
6,246 阅读
4
N1教程:Openwrt安装docker webui界面(基于flippy openwrt n1固件)
5,313 阅读
5
ZFAKA小店Docker版之 数据的备份和迁移
5,195 阅读
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
MV频道
登录
Search
标签搜索
vps
typecho
linux
bench
mysql
cloudflare
nginx
lnmp
ssl
empirecms
openwrt
google
centos
docker
n1
301
qbittorrent
telegram
free
onedrive
V+变量
累计撰写
291
篇文章
累计收到
220
条评论
首页
栏目
Linux学堂
网站建设
网络资源
主题插件
固件工具
主机评测
MV频道
页面
关于我们
友链链接
壁纸下载
统计中心
热点搜索
图床上传
推荐
剩余价值
磁链清理
IP定位
搜索到
291
篇与
的结果
2025-04-07
LNMP一键包Mariadb主从复制碰到的坑,如果你也碰到过,教你如何解决
0 前言这几天趁着休息把几个VPS上的LNMP都升级了下,全部换成LNMP2.2,PHP和MYSQL也升级了,PHP升级为8.3,Mysql升级为MariaDB10.11,升级后发现主从同步又要重新配置了,折腾了七八个小时总算弄好了,为避免以后少走坑,记录一下出现的问题。1 主服务器连不上如果从服务器 telnet 主服务器IP 3306 连不上,大概率是主服务器的防火墙问题,Debian系统可以按如下操作:1修改/etc/iptables的v4.rule将第15行的(有的系统可能不在第15行,按代码查找)-A INPUT -p tcp -m tcp --dport 3306 -j DROP中的DROP改为ACCEPT,改后:-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT然后重启防火墙:service iptables restart2 主从数据库不同步如果主服务器已有数据,需先手动同步数据到从服务器,重新导入一次:# 在主服务器导出数据(包含日志位置信息) mysqldump -u root -p --all-databases --master-data=2 > db_dump.sql # 在从服务器导入数据 mysql -u root -p < db_dump.sql3 检查主从服务器配置,确保ID、访问权限配置好配置文件在/etc/my.cnf:主服务器配置:[mysqld] server-id = 1 log_bin = mariadb-bin.log bind-address = 0.0.0.0从服务器配置:[mysqld] server-id = 2 -- 确保与主服务器不同 relay-log = mariadb-relay-bin.log read_only = 1注意lnmp一键包在在mysqld靠后的位置也有server-id = 1,不能重复操作后分别重启:lnmp mysql restart -- 修改配置后重启服务重启后需要确认验证主库和从库的 binlog 和 server_id:SHOW VARIABLES LIKE 'log_bin'; #应为 ON SHOW VARIABLES LIKE 'server_id'; # 必须唯一且非零4 CHANGE MASTER 命令参数有误确保在从服务器上执行 CHANGE MASTER 命令时,参数完整且正确:CHANGE MASTER TO MASTER_HOST='主服务器IP', MASTER_USER='replica_user', MASTER_PASSWORD='your_password', MASTER_PORT=3306, MASTER_LOG_FILE='mariadb-bin.000001', -- 主服务器的二进制日志文件名 MASTER_LOG_POS=12345678; -- 主服务器的日志位置关键点:MASTER_LOG_FILE 和 MASTER_LOG_POS 必须与主服务器执行 SHOW MASTER STATUS 的结果完全一致。如果主服务器未启用二进制日志(log_bin),需在主配置文件中启用并重启服务。5 确保主服务器上的复制用户(如 replica_user)具有正确的权限:在主服务器执行:SHOW GRANTS FOR 'replica_user'@'从服务器IP或%';正常显示权限如下:GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replica_user'@'%';如果有问题需要重新刷新权限:GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replica_user'@'%' IDENTIFIED BY 'your_password'; FLUSH PRIVILEGES;6 清除旧的复制配置如果从服务器曾配置过主从复制,旧配置可能导致冲突。重置从服务器状态:STOP SLAVE; RESET SLAVE ALL; -- 清除所有旧的复制信息然后重新执行 CHANGE MASTER 和 START SLAVE。7 检查MariaDB错误日志如果没找到原因,可以查看从服务器的错误日志(默认路径 /usr/local/mariadb/var/mariadb.err),定位具体错误原因:tail -n 100 /usr/local/mariadb/var/mariadb.err常见日志错误:连接主服务器失败(检查防火墙、网络、端口)。认证失败(用户名或密码错误)。二进制日志文件不存在(MASTER_LOG_FILE 名称或位置错误)。
2025年04月07日
40 阅读
0 评论
0 点赞
2025-04-07
不想继续使用docker?教你彻底卸载docker,不留痕迹
Docker曾是开发神器…直到它变成你的噩梦。或许你厌倦了诡异的容器问题、无止境的重建、”在我电脑上能跑啊!”的甩锅现场,无论什么原因,现在你决定与Docker一刀两断——不是简单卸载,而是要彻底抹除它的所有痕迹。如果你是这种狠人,这份指南就是你的救星。我们不绕弯子,直接进入正题。0 为什么要卸载Docker?残留镜像和废弃卷占用磁盘空间频繁的版本冲突和兼容性问题复杂配置让人抓狂想尝试更轻量的替代方案既然决心已定,我们直击重点。1 步骤1:停止并删除所有容器先给运行中的容器”断气”:docker ps -q | xargs -r docker stop想一键清空所有容器/镜像/数据卷?docker system prune -a --volumes --force⚠️ 警告:这会摧毁所有Docker数据,确认不需要备份再执行2 步骤2:卸载Docker(Ubuntu/Linux系统)Docker文件散落各处,必须斩草除根:sudo apt-get purge -y docker-engine docker docker.io docker-ce docker-ce-cli containerd runc3 步骤3:清理残留文件Docker藏匿的配置文件也要消灭:sudo rm -rf /var/lib/docker sudo rm -rf /var/lib/containerd sudo rm -rf /etc/docker sudo rm -rf ~/.docker4 步骤4:删除软件源和密钥sudo rm /etc/apt/sources.list.d/docker.list sudo rm -rf /etc/apt/keyrings/docker.gpg # 如果密钥目录专为Docker创建: sudo rm -rf /etc/apt/keyrings/5 步骤5:清理孤立软件包sudo apt-get autoremove -y --purge docker docker-ce docker-ce-cli sudo apt-get clean6 步骤6:验证卸载结果docker --version# 应显示 "command not found" docker-compose --version# 同样应报错如果都提示命令不存在,恭喜!卸载成功。可选步骤:删除用户组sudo groupdel docker # 如果创建过专用用户: sudo userdel docker7 步骤7:重启系统(推荐)sudo reboot趁着重启喝口咖啡…此刻,你的系统已与Docker彻底诀别。没有残留配置,没有幽灵卷宗,就像它从未存在过。8 替代方案推荐:Podman:无需守护进程的容器工具 Minikube:轻量级Kubernetes方案 Vagrant:跨平台虚拟化工具或者干脆给自己放个假——容器化什么的,暂时见鬼去吧。再见,Docker。这段孽缘终于结束了。9 极简操作版:# 清空所有数据 docker system prune -a --volumes --force # 卸载软件包 sudo apt-get purge -y docker* # 删除残余文件 sudo rm -rf /var/lib/docker /etc/docker ~/.docker # 自动清理 sudo apt-get autoremove -y --purge docker* # 验证 docker --version # 重启 sudo reboot至此,Docker已从你的世界消失。不念,不悔。
2025年04月07日
185 阅读
0 评论
0 点赞
2025-04-06
化繁为简,帝国cms博客数据迁移至wordpress详细教程
一 前言5Var美食谷(5var.com)是我很早就建立的一个美食网站,运行几年流量还是少的可怜,可能是来自搜索引擎的流量太少了,毕竟酒香也怕巷子深,本着死马当活马医的想法,索性就搬到wordpress,毕竟wordpress才适合博客……这里并不是说帝国不适合建站。二 转换教程以下迁移详细记录与代码。1 第一步:搭建wordpress官网下载wordpress即可,安装的时候正常安装即可。2 第二步:安装导入数据的工具可以安装wordpress导入器插件。3 第三步:导出帝国的数据这里导出数据就需要用到代码了,只导出文章和分类,分类url如果规则的话,可以保留不变,如果每个分类下都有不同的url形式的话,那就不行了。在你帝国网站根目录建立一个etow.php,然后将下面的代码放进去,访问这个PHP即可看到xml数据,这时候Ctrl+S保存,保存为xml文件。etow.php代码如下:隐藏内容,请前往内页查看详情4第四步:导入wordpress这样便可以把你帝国的数据转移到wordpress里面了。
2025年04月06日
43 阅读
0 评论
0 点赞
2025-04-05
关于本站V+变量最近的服务器转移和升级的说明
1 小站迁徙之路1)本站最早是在腾讯云清凉云广州,当时是2021三年活动入手的,但是没时间打理,基本属于放羊状态。2)2024年9月,因腾讯云到期,续费价格较高,又不想各种凑券退款之类的便宜入手,于是转移到德国Netcup 黑五活动的VPS1000的服务器,不得不说Netcup的性价比真的很高,5.75O就有4C -8G-512GSSD的配置,德国大厂真的超级稳定,直到现在本站的图床https://imgq.de还是建在Netcup。3)最近,碰到Yxvm和Nodeseek正在开展免费赞助活动,见NodeSupport免费服务器赞助计划,正好本站流量也达标了,抱着试一试的心态申请了下,结果几个小时后就获批了,真的很感谢Yxvm和Nodeseek!2 小站升级接着本次迁徙的机会,想着给小站也来个php和Mysql升级,主要就是Php7→8,Mysql5.6→MariaDB10。本站用的是Typecho程序,网上搜了下是支持PHP8和MariaDB10的,于是马上开搞。整体很顺利,这里记录下:1)Yxvm VPS安装lnmp(PHP8和MariaDB10)直接用军哥的lnmp一键脚本,刚好4.2号军哥发了lnmp2.2:wget https://soft.lnmp.com/lnmp/lnmp2.2.tar.gz -O lnmp2.2.tar.gz && tar zxf lnmp2.2.tar.gz && cd lnmp2.2 && ./install.sh lnmp注意,这里我碰到报错,压缩包有点问题,我是下载到本地解压后上传到VPS的,可以正常安装和使用。2)Netcup上导出数据库,数据库不大,直接phpmyadmin可视化操作;3)Yxvm VPS安装Verysync,将vvars.com网站文件从netcup同步过来;#(如果需要指定索引存放位置请在最后面添加-d 路径 如 -d /data/verysync) curl http://www.verysync.com/shell/verysync-linux-installer/go-installer.sh > go-installer.sh chmod +x go-installer.sh ./go-installer.sh4)Yxvm VPS上phpmyadmin导入从Netcup导出的数据库;实践证明MariaDB是可以兼容Mysql5.6的,直接导入成功,没有报错;5)修改config.inc.php数据库配置服务器地址、账号密码,确保能连接;6)本站用了cloudflare的优选,所以只需要切换源站IP即可;7)测试Vvras.com打开、登录和修改是否正常,一切正常。
2025年04月05日
37 阅读
0 评论
0 点赞
2025-04-04
新手学SEO的利器——如何用Google Analytics查看数据优化SEO效果
一 前言谷歌分析(google analytics)是做seo非常重要的工具,那么如何用Google Analytics查看数据优化SEO效果呢。今天就来介绍下具体分析。二 主要SEO指标1 首页概况主要查看活跃用户,新用户数量和平均互动时长,也就是停留时间。越多,越长越好。下面是主要的国家和浏览的页面,以及自然流量,直接进入,unassigned是指没有路径流入的流量,再下面是推荐分享,社媒自然流量。2 下拉可以选择更多的数据,事件。3 报告概览也是差不多数据,主要除了关注流量来源的国家还要关注主要查看的页面来进行更加深度的优化,其他的页面也要优化,先后问题。4 实时流量情况当前30分钟或者5分钟的浏览用户数量,会话数量及浏览的页面。5 页面实时浏览情况也是一样,查看用户感兴趣的页面是哪一些。6 地区城市,和流量来源的搜索引擎其他重复的数据我就不一一介绍了,挑重点的讲。这一块潜在客户需要注意的点是地区城市,和流量来源的搜索引擎,可以进行更细化的广告投放。7 查看自然流量以及直接搜索来的流量占比。8 用户关注的页面是哪一些,针对性的优化,增加点击率转化率。9 2C数据就不看了,也是一样道理,主要做的还是B2B。10 应用流量概览,多语言这一块要注意,小语种的市场还是非常有潜力的。我们做广告的时候,最好是针对好的样本数据,针对国家地区去分组投放广告做测试。11 查看波动时间点以及情况,给我们谷歌广告投放的时间段参考。12事件主要几大类,pv用户查看的页面数量,user engagement停留时间或者用户活动时间总和,scoll 滑动,session start跟踪每次用户做了什么,算是小型的用户搜索旅途映射。First visit,判断用户是不是第一次进入,新用户的比例。video process,查看视频的数量,view search results,查看搜索结果的用户量。13语言的划分。14变量,不同形式不同国家来源的用户量归纳。15点击应用,会显示各个细分来源的比例。16用户路径的分布。17用户的搜索浏览路径以及具体来源IP的国家,地区。
2025年04月04日
51 阅读
0 评论
0 点赞
2025-04-04
Cloudflare教程:免费CDN配置指南,提升网站速度
一 前言CDN(内容分发网络,Content Delivery Network)是一组分布在不同地理位置的服务器网络,旨在将网站内容快速、高效地传递给用户。通过将内容缓存到离用户更近的服务器上,CDN可以显著减少加载时间,提高用户体验。二 cloudflare注册教程Cloudflare CDN优势:免费,网站性能优化,提高可靠性(故障情况下,网站仍能保持在线状态),降低带宽成本,增强安全性。鸭老师cloudflare教程手把手教你配置,加速wordpress网站。1 注册账号进入http://cloudflare.com,点击注册或者使用谷歌/Apple登录。2 注册好登录后点击添加域。3 输入你的域名,点击快速扫描DNS记录cloudflare会自动扫描你的DNS几率并导入,继续。4 给你的网站选择套餐计划,选择最后一个Free计划。5 点击回到概述页面这里我们会看到提示更改名称服务器,把这两个复制。6 回到我们购买域名的地方,比如namesilo,登入账户选择account setting,点击default settings,拉到最下面,如果这里之前没改需要下拉选择custom name servers,然后把刚才复制的粘贴进去,保存。7 change nameservers最好是在这里更改,上面的更改可能不成功。点击manage domain然后点击上面的change nameservers,下面网站记得打勾,然后在下面的页面添加新的name servers。8 回到cloudflare,点击立即检查名称服务器就会出现这样的提示,我们就等邮件通知。查询DNS是否生效可以从whatsmydns去查看。成功后会在你的域名旁边显示活动,已经激活cloudflare服务,接下去就是进行配置。三 cloudflare免费cdn配置教程1 快速入门,设置HTTPS/始终使用HTTPS。2 下面配置很简单,主要的就两个方面,其余保持默认即可。第一个速度方面,点击优化进入,图像优化保持默认,不是pro也更改不了,直接进入内容优化。内容优化把Speed Brain,Cloudflare Fronts,Early Hints打开,其余默认关闭,Rocket Loader不要打开,容易与优化插件冲突。协议优化能打开的全打开,其余保持默认,其他的这个选项也保持默认。3 缓存配置点击缓存直接进入配置选项的页面。清除缓存,主要应用于改动网站后,旧缓存要清除一下生成新缓存,否则用户端可能还保持未更改之前的页面,选择清除所有或者自定义根据主机需求,一般是清除所有。缓存级别默认。浏览器缓存TTL,选择一年。余下的保持默认关闭。
2025年04月04日
219 阅读
0 评论
0 点赞
2025-04-04
Typecho全站启用HTTPS教程的坑
全站启用HTTPS让您的网站更安全,随着用户和搜索引擎的不断重视,很多小伙伴们已经加入HTTPS的阵营,分享下Typecho设置HTTPS的过程。1申请SSL证书如果您还没有域名SSL证书,可以参考教程:沃通免费SSL证书申请和Let’s Encrypt免费SSL证书申请免费的SSL证书。2 Typecho设置登录Typecho后台 -> 设置 -> 基本设置 -> 站点地址改成https的域名是必须的。3编辑Typecho站点根目录下的文件config.inc.php加入下面一行配置,否则网站后台还是会调用HTTP资源。/** 开启HTTPS */ define('__TYPECHO_SECURE__',true);4 评论替换由于Chrome浏览器对HTTPS要求较高,Firefox已经显示小绿锁,可是Chrome还是有警告提示,F12查看,评论表单的action地址还是HTTP,找到站点主题目录下的comments.php文件,并搜索$this->commentUrl(),将其替换为:echo str_replace("http","https",$this->commentUrl()); 最后保存。5 HTTP重定向到HTTPS但是这样HTTP的方式还是可以访问的,我们可以通过WEB服务器(Ningx)将80端口(HTTPS)重定向到443端口(HTTPS),强制全站HTTPS,请参考文档:Nginx强制https,HTTP 301重定向到HTTPS说明。6 查看效果最后清除浏览器缓存访问下自己的网站,浏览器已经显示安全的小绿锁标识,如果没有出现小绿锁,请通过浏览器F12分析是否还加载了不安全的HTTP资源。
2025年04月04日
41 阅读
0 评论
0 点赞
2025-04-03
CentOS系统基本操作—— 文件操作与压缩命令大全
管理centos服务器的时候常会对文件进行一些常规操作,除了ftp之外了解在ssh下必要的文件操作命令那也是必不可少的,以下摘录一些常用的文件操作命令:1 文件操作:ls ####查看目录中的文件#### ls -F ####查看目录中的文件#### ls -l ####显示文件和目录的详细资料#### ls -a ####显示隐藏文件#### ls *[0-9]* ####显示包含数字的文件名和目录名#### rm go.tar #### 删除go.tar文件#### find mt.cgi ####查找文件名为mt.cgi的文件#### df ?h ####查看磁盘剩余空间#### find / -name xxx -print ####查找xxx文件####2 压缩与解压缩:tar xvf wordpress.tar ####解压tar格式的文件#### tar -tvf myfile.tar ####查看tar文件中包含的文件 #### tar cf toole.tar tool ####把tool目录打包为toole.tar文件#### tar cfz xwyme.tar.gz tool ####把tool目录打包且压缩为xwyme.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB #### tar jcvf /var/bak/www.tar.bz2 /var/www/ ####创建.tar.bz2文件,压缩率高#### tar xjf www.tar.bz2 ####解压tar.bz2格式#### gzip -d ge.tar.gz ####解压.tar.gz文件为.tar文件#### unzip phpbb.zip ####解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的#### bunzip2 file1.bz2 ####解压一个叫做 ‘file1.bz2′的文件#### bzip2 file1 ####压缩一个叫做 ‘file1′ 的文件#### gunzip file1.gz ####解压一个叫做 ‘file1.gz’的文件#### gzip file1 ####压缩一个叫做 ‘file1′的文件#### gzip -9 file1 ####最大程度压缩#### rar a file1.rar test_file ####创建一个叫做 ‘file1.rar’ 的包#### rar a file1.rar file1 file2 dir1 ####同时压缩 ‘file1′, ‘file2′ 以及目录 ‘dir1′#### rar x file1.rar ####解压rar包#### unrar x file1.rar ####解压rar包#### tar -cvf archive.tar file1 ####创建一个非压缩的 tarball#### tar -cvf archive.tar file1 file2 dir1 ####创建一个包含了 ‘file1′, ‘file2′ 以及 ‘dir1′的档案文件#### tar -tf archive.tar ####显示一个包中的内容#### tar -xvf archive.tar ####释放一个包#### tar -xvf archive.tar -C /tmp ####将压缩包释放到 /tmp目录下#### tar -cvfj archive.tar.bz2 dir1 ####创建一个bzip2格式的压缩包#### tar -xvfj archive.tar.bz2 ####解压一个bzip2格式的压缩包#### tar -cvfz archive.tar.gz dir1 ####创建一个gzip格式的压缩包#### tar -xvfz archive.tar.gz ####解压一个gzip格式的压缩包#### zip file1.zip file1 ####创建一个zip格式的压缩包#### zip -r file1.zip file1 file2 dir1 ####将几个文件和目录同时压缩成一个zip格式的压缩包#### unzip file1.zip ####解压一个zip格式压缩包####文件和压缩命令在备份网站的时候很有用的,用习惯了 Windows 下的图形界面压缩软件,突然在命令行下真的是很不习惯的,特别是备份解压缩的时候总是解压缩到错误的目录里,所以掌握这些指令真的很重要。
2025年04月03日
32 阅读
0 评论
0 点赞
2025-04-03
充分利用cloudflare的缓存功能来实现网站加速——Cloudflare进阶技巧:缓存利用最大化
一 前言cloudflare我想你应该知道是什么,一家真正意义上免费无限量的CDN,至今未曾有哥们喷它的。当然,在国内的速度确实比较一般,不过这也不能怪它。CDN最大的特色,我想就是它的缓存功能,达到防攻击,减轻源服务器的压力。着重聊一聊cloudflare的缓存功能,你还在使用默认的缓存配置?这篇文章可以给你带来对cloudflare缓存的进一步了解。关于cloudflare,本站之前有介绍过如何用cloudflare给tyepecho博客加速:利用cloudflare给你的typecho加速——Typecho博客系统专用的CloudFlare缓存规则二 cloudflare默认缓存配置2.1 特点1、仅对静态资源生效,比如js、css等等完整格式:.7z .csv .GIF .MIDI .PNG .TIF .ZIP .AVI .DOC .GZ .MKV .PPT .TIFF .ZST .AVIF .DOCX .ICO .MP3 .PPTX .TTF .APK .DMG .ISO .MP4 .PS .WEBM .BIN .EJS .JAR .OGG .RAR .WEBP .BMP .EOT .JPG .OTF .SVG .WOFF .BZ2 .EPS .JPEG .PDF .SVGZ .WOFF2 .CLASS .EXE .JS .PICT .SWF .XLS .CSS .FLAC .MID .PLS .TAR.XLSX HTML2、刷新时间,一般为2小时。2.2 不足如果我想缓存html页面呢,甚至说我想缓存MP4视频格式(在这里不推荐大面积缓存视频,如果你不想被封的话)生效时间只有2小时,让人不满足,我想生效时间长一点,怎么办?三. 配置缓存的方式3.1 页面规则如果只是配置缓存的话,我不推荐使用页面规则,因为免费账号的页面规则是有3条,而且它支持的功能更全面,很明显它是十分珍贵的,不应该浪费在简单的缓存上。不足之处:页面规则的缓存支持的最长时间也不过才一个月,可以看看第二种方式,支持时间会更久。3.2 Cache Rules看一下入口位置,缓存 → Cache Rules → 创建规则,值得一提的是,它支持10条规则,足够大部分人的需求。我们再看看规则的具体配置吧亮点:规则数目支持10条 默认缓存所有 最长时间竟然高达一年之久 对于这种优点,我们没有理由不心动。四. 应用场景图床:图片这种东西,我想是不需要修改的吧,缓存它没有任何坏处。 视频:不推荐!除非你是缓存几个小视频,不大面积使用,这种是没什么问题的。 目录程序:在这里提到Alist,我使用的是这个。你可能会好奇,为什么提到它,因为我们常用的存储有OneDrive、阿里云盘等等,但是,我们都知道它并不是无限制使用。如果在短时间有大量请求,是会报429的,那不就报废了吗?但是如果我们开启本地代理,然后对下载地址进行缓存,会发生什么?大大减轻了源下载的压力,从此和限频说拜拜。 值得注意的是,只推荐缓存小文件!因为缓存太多大文件,会大大提高被封禁的风险。 静态博客:反正已经是静态博客了,直接全站缓存。4.1 如何判断缓存是否生效?如果你发现显示Hit,就代表你成功了。五. 结语cloudflare是一把利剑,我只是展示了其中的一个方面,更多功能需要你来开发。剑是死的,人是活的,发挥你的主观能动性吧。
2025年04月03日
114 阅读
0 评论
0 点赞
2025-04-03
利用cloudflare给你的typecho加速——Typecho博客系统专用的CloudFlare缓存规则
一 前言好久都没有更新Typecho博客了,最近几天V+变量测试了一套适用于Typecho博客系统的CloudFlare缓存规则,经过近一周时间的测试确定有效,并且加速效果特别突出,今天就无偿分享给大家,也算是为国内Typecho生态添砖加瓦了吧!总结下来,这套CloudFlare缓存规则带来的好处就是可以大大的缓解服务器压力,将几乎所有的静态资源都缓存在CloudFlare节点IP上,全球各地的访客都可以就近请求CloudFlare节点IP来浏览网站,由此达到网站载入速度的极致优化,再配合专属于国内的优化规则,哪怕你的服务器是境外的都可以在国内实现秒开、闪过的浏览体验。因为缓存比较全面,所以就算是有CC攻击都可以就基本无视了,让他打就是了,都打在缓存上而已,加上CloudFlare安全防护加持,甚至DDoS 攻击都可以无视了,让你的Typecho站点真正成为一个打不死的小强。注:因内容违法造成域名被墙的,谁也没办法,自求多福了。二 配置教程1 准备工作好了,不废话了,我们开始今天的分享吧,首先要做的就是将你的Typecho站点采用DNS方式接入CloudFlare,当然也可以CNAME方式接入,不受限于接入CloudFlare的方式,但从效能上来说DNS接入CloudFlare是最好的。2 配置规则这里为了素材的方便,V+变量就以Typecho博客:https://www.vvars.com 为例了,大家自己用的时候记得替换为自己的域名即可,后面就不再做提示了。为了方便大家引用规则,每张规则截图后多会附上规则表达式代码,大家利用CloudFlare创建规则处提供的【编辑表达式】复制粘贴直接使用就是了。一共是三条缓存规则,缺一不可,并且三条规则是要严格按照顺序排列生效才可以,三条规则主要实现的是:1)不缓存指定的目录(如后台、搜索查询等等)。2)登录状态以及发表过评论的不缓存。3)只要不是登录状态或者发表过评论的请求一律缓存。1)第一条规则(可以起名“不缓存”)具体规则配置如下图所示:表达式为:(starts_with(http.request.full_uri, "https://www.vvars.com/admin/")) or (starts_with(http.request.full_uri, "https://www.vvars.com/search/"))符合上述条件的一律绕过缓存回源请求,所以如下图配置:保存即可。2)第二条规则(可以起名为“登录评论不缓存”)具体规则配置如下图所示:表达式为:(starts_with(http.request.full_uri, "https://www.vvars.com/") and http.cookie contains "__typecho_authCode" and http.cookie contains "__typecho_uid") or (starts_with(http.request.full_uri, "https://www.vvars.com/") and http.cookie contains "__typecho_remember_")符合上述条件的一律绕过缓存回源请求,所以如下图配置:保存即可。这条规则其实就是通过当前Typecho站点的cookie来判断是登录状态还是发表过评论状态,一般来说这都是Typecho站点的标准,所以适用大多数的Typecho主题,如果你的Typecho主题是多用户模式的话,那可能就得根据需要来修改这条规则了,一般通过浏览器“开发者工具”调试就能获得具体的cookie,只能大家自己搞定了。也可以评论去留言咨询明月哦!3)第三条规则(可以起名为“缓存所有”)具体规则配置如下图所示:表达式为:(starts_with(http.request.full_uri, "https://www.vvars.com/") and not http.cookie contains "__typecho_authCode" and not http.cookie contains "__typecho_uid" and not http.cookie contains "__typecho_remember_") or (starts_with(http.request.full_uri, "https://www.vvars.com/usr/uploads"))这个规则跟第二条规则正好相反,凡不是登录状态或者留过言状态的请求一律缓存当前所有资源,评论留言要排除的原因就是否则会造成评论信息混乱,比如:A客户的留言信息被B客户看到并能直接发表评论。因为第三条规则是缓存所有,所以下面的缓存配置就要配置一下了,不能是【绕过缓存了】,具体配置如下图所示:CloudFlare里这个边缘TTL缓存指的就是CloudFlare节点IP上的缓存,所以这里配置的意思就是在节点IP上保留缓存资源7天的时间,除非你发布的文章需要经常修改变更,否则这个边缘TTL时间越长缓存命中率就越高,自然访客的访问速度就会一直保持非常快的体验。这个浏览器TTL指的是在客户浏览器里保留缓存多久,一般这里的时间是一定要短于边缘TTL时间的,因为边缘TTL缓存我们可以通过CloudFlare后台清除缓存来情理掉,而这个浏览器TTL缓存是在客户电脑上的,我们是不可能清理的,所以最好的办法就是让其缓存时间短一些,超过这个时间就到边缘TTL上请求更新一下,最科学。剩下的就是有关缓存的细节配置了,就不一一介绍了,大家参照上图勾选就是了,最后保存规则即可。3 效果查看三条规则保存后,最后一步还要确认一下规则顺序如上图所示,否则规则生效就会出错哦,按照这个顺序就可以让CloudFlare来智能自动的缓存网站资源了,随着访客数量的增加,CloudFlare后台【分析日志】——【流量】里大家就可以看到缓存命中情况了,如下图明月的:这个缓存命中率已经80%以上了,这还是V+变量今天调整了博客首页,多次更新了缓存,否则这个命中率可以高达90%以上,这还多亏了Typecho系统的简洁和V+变量所用的Joe主题静态化做的好,现在V+变量的这个Typecho站在CloudFlare缓存的加持下几乎是0回源请求,前端的访问速度也是达到了极致,只能说CloudFlare威武!哈哈!
2025年04月03日
84 阅读
0 评论
0 点赞
1
2
3
4
...
30