运维排障11

缓存站的阅读量统计:PHP 不执行了,计数该怎么做

一个自相矛盾的需求 站点上了静态缓存(缓存命中时 nginx 直接返回 HTML,根本不执行 PHP),但文章页又需要显示真实的阅读量。 ...

一次把自己站点打挂的经历:过滤 get_post_metadata 导致的无限递归

我写了一个插件,把自己站点的文章页打挂了 场景很普通:我想让新发布的文章默认带上版权声明——省得每篇都手动设一次。 思路是:如果文章没设这 ...

备份不是 cp -r:我在服务器上的备份与回滚习惯

cp -r 不是备份,是复制 把网站目录 cp -r 一份,看起来很稳妥,但它作为"备份"有几个硬伤: 问题后果不保留权限与属主恢复后文件 ...

robots.txt + nginx 双保险劝退采集爬虫(附必须放行 robots.txt 的原因)

谁在爬你的站 个人站最常遇到的不是"恶意攻击",而是一堆 SEO 数据商 / 采集爬虫在持续抓取: AhrefsBot、SemrushBo ...

nginx 的 rewrite ... break 会吞掉后面的规则:一次缓存直出引发的顺序陷阱

一个会"吞掉"后续配置的指令 nginx 里有两类很常见的写法: # 缓存直出:命中就返回静态文件 if (-f /path/to/cac ...

用 nginx 在源站封掉 WordPress 的高危入口(含 XML-RPC)

默认装的 WordPress,开着一堆没人用的入口 刚装好的 WordPress,公网上能直接访问到这些东西: /readme.html ...

别全信 X-Forwarded-For:让 WAF 真正看到真实客户端 IP

一个被忽略的默认值 很多 nginx 配置(含一些面板的默认模板)里写着: set_real_ip_from 0.0.0.0/0; rea ...

主题的 404 页被 nginx 吃掉了:fastcgi_intercept_errors 的坑

现象:主题明明有 404 页,访客看到的却是 nginx 的默认页 WordPress 主题通常会渲染一个像样的 404 页面(带导航、搜索框、 ...

宝塔日志从不轮转:单个访问日志涨到 221MB

症状:磁盘莫名其妙少了几百 MB 面板上看磁盘占用,发现 /www/wwwlogs 目录下单站日志已经 221 MB,整个目录 371 MB。而 ...

fail2ban 封禁静默失效:nftables 下要换掉 ipset 动作

症状:fail2ban 显示封了,攻击一点没停 装了 fail2ban,配置看着也正常,fail2ban-client status sshd ...