用备份包解压恢复,文件都在但页面直接 500,日志提示无法写入缓存。乍看像缓存或者权限的锅,追下去往往不是。
chown -R www:www /www/wwwroot/example.com
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
追下去是这么回事:解压出的文件属主是 root,运行账号没有写权限。
「恢复后权限错误」这类改动最怕改一半,回滚脚本先准备好,再动生产。接口问题先分清是没发出去、发出去了没收到,还是收到了处理失败。
偶发问题先统计频率,一小时几次和一天一次,查法完全不同。改完顺手把文档补一句,省得下次自己重新推一遍。
监控和日志的时间要对上,时区不一致会多绕很大一圈。临时改动用注释写上日期和原因,过两周自己都记不清为什么这么写。
动手前把原文件复制一份带时间戳,出问题立刻换回去,比现场分析快得多。一次只改一处,改完立刻验证,几个改动叠在一起,出问题就说不清是谁导致的。
具体做法是,把目录属主改为运行账号;目录给执行权限;文件给读写权限。
验收就看一点,站点恢复正常,缓存可正常写入。