Zairun 发布的文章

子婿日

初十的灯火还未散尽,十一的鼓点已隐约传来。翻开老黄历,今日原是“子婿日”——岳父们要宴请女婿,桌上少不了前日初九祭天剩下的美食,谓之“十一请子婿”。想来是古老的人情往复,让年节的余温在姻亲间再续一轮暖意。

虽喜子婿日,姑爷携礼登门,翁婿对坐杯盘交错,吃酒食肉大块朵颐,年味的福泽延绵未散。这种细腻传统工笔画,有浓郁的古韵厚德家风之美,甚是喜欢?

春节难得清闲,本想捣鼓一下自己的网站和域名,结果光是在阿里云跟各种规则斗智斗勇就耗掉半天。说是为了“安全”。

先是找到“SSL证书”入口,点进去却是一堆“待申请”的记录,找了半天没找到真正的申请按钮。好不容易找到了,又遇到DNS验证——需要去Cloudflare添加TXT记录。添加完回来验证,提示“等待生效”,等了几分钟再试,又说“记录不存在”。反复折腾了几次,心态已经崩了一半。

更崩溃的是,好不容易验证通过,证书签发后下载下来,却发现阿里云的文档指引混乱,完全不知道该怎么配置到服务器上。百度搜教程,各家说法不一,有的说要改nginx配置,有的说上传到指定目录,有的说用阿里云的云盾一键部署——可我用的不是阿里云ECS啊!

折腾了两个多小时,最后放弃了。那一刻的感受是:这门槛好高啊,小白直接怀疑人生。可域名明明是我花钱买的,在阿里云操作起来却像是在偷窃,在自家屋里被当贼防,各种验证、弹窗、找不到入口,明明是为了安全,结果却把正常用户挡在门外。这种体验,完全没有考虑客户使用感受,是一种把责任推给用户的行为。

Cloudflare国内口碑一直很好,域名的DNS从阿里云迁到Cloudflare,听说这样不但不会影响国内访问速度,而却恰恰会提升国外对网站的访问速度。这次阿里云的体验终于决心,哪怕在趟一次雷。

软切换,先测试子域名,稳妥但耗时。硬切换直接修改NS记录,一步到位。

考虑到网站访问量不大,和决心,选择了硬切换。直接在阿里云域名控制台,把DNS服务器修改为Cloudflare提供的两个地址。

fred.ns.cloudflare.com

rita.ns.cloudflare.com

关键一步要提前配置DNS记录。
在修改NS记录之前,我提前在Cloudflare的DNS设置中添加了A记录。

zairun.com → 阿里云主机IP

www.zairun.com → 阿里云主机IP

代理状态开启(橙色云朵)

这一步至关重要,先设置好“门牌号”,再改“指路人”,确保切换后网站能立即访问。

宝塔面板的一键解决方案

还是宝塔面板一键SSL更省事

进入网站设置 → SSL → Let's Encrypt

勾选 zairun.com 和 www.zairun.com

选择文件验证(不用去Cloudflare加DNS记录)

点击申请,30秒搞定!

申请成功后开启强制HTTPS,然后在Cloudflare把SSL/TLS模式升级到“完全(严格)”。

设置重定向规则让网址统一起来
确定域名策略
我需要让所有访问都统一到带www的HTTPS版本(https://www.zairun.com),因为:

SEO友好,避免分散权重。

在Cloudflare设置重定向规则
使用重定向规则(Redirect Rules),配置了两条规则

规则1,强制HTTP→HTTPS

传入请求匹配:http://*
目标URL:https://www.zairun.com/${1}
状态码:301
保留查询字符串:✓

规则2,根域名→www域名

传入请求匹配:https://zairun.com/*
目标URL:https://www.zairun.com/${1}
状态码:301
保留查询字符串:✓

访问以下URL,都能正确跳转。

http://zairun.com → https://www.zairun.com

http://zairun.com/about → https://www.zairun.com/about

https://zairun.com → https://www.zairun.com

速度优化开启免费加速功能

Cloudflare免费加速功能
在Cloudflare的速度 → 优化页面,开启了以下功能。


功能	作用
Rocket Loader	异步加载JS,防止阻塞渲染
Early Hints	预加载资源,加速页面显示
Brotli压缩	更高效的压缩算法
HTTP/3	最新传输协议,更快更稳

Cloudflare Fonts可以优化Google字体加载,但我的网站没用Google Fonts,所以保持关闭。Cloudflare免费版够用——Rocket Loader、Early Hints、HTTP/3这些加速功能都免费。

我能理解安全很重要,但如果安全措施让好人寸步难行,坏人却总能找到漏洞,那这种安全就是一种变相的推卸责任。与其说是保护用户,不如说是把风险和责任转嫁给了用户。

相比之下,Cloudflare的体验就顺畅得多——功能清晰、文档详细、操作直观,虽然有些高级功能需要付费,但基础的CDN和SSL都是免费且好用的。宝塔更是简单粗暴,一键解决了我折腾两小时没搞定的事。技术工具应该是帮人省时间的,不是让人浪费时间的。

宝塔商店升级PHP版本,这七个是核心扩展,绝大多数网站运行必需的,建议保留或安装。有些看网站实际需求,其它小博客好像都没用,imgick后台推荐安装。运行观察等"缺少xx扩展"的错误提示,再逐一单独安装。

opcache
fileinfo
mbstring
exif
intl
xsl
imgick

 

静候元宵

春节在家也未全然闲散,多数时间都沉浸在打理网上那片自留地,写写记记,不觉光阴流走。今晨看天气预报,发现节前黑龙江零下二十度的凛冽早已褪去,如今气温已在零度上下徘徊。这才惊觉,今天已是初十了。

再过几日便是元宵节,等那一碗热腾腾的汤圆下肚,看过最后一盏花灯熄去,心里那层属于“年”的暖意与慵懒,才肯真正收起。

初九

总算把.Cloudflare R2 对象存储搞妥了,本地上传PicList工具还不错,设置繁琐些,也是Cloudflare R2 对象存储规则太多。昨天链接不上,链接后上传文件被覆盖,路径不对,这个{fullName}变量要加上,重设路径和高级重命名才解决。

阅读剩余部分