新版本上线当时正常,凌晨清理旧release后,第二天全站CSS 404。pub/static看着存在,其实里面的链接还指向已经删除的release-20260801。
find pub/static -xtype l -ls | head readlink -f pub/static/frontend/Vendor/theme/en_US/styles-m.css ls -ld releases/* shared/pub/static current
零停机部署里要明确哪些目录是每个release独立生成,哪些放shared。不能让current release的相对软链接跨到会被轮转的旧目录。
修复顺序
先切换到完整、校验过的静态产物,恢复服务;再改部署脚本,让静态构建在当前release内完成或指向稳定shared版本目录。清理脚本删除release前,用 find -L检查是否仍被current引用。
发布验收加一项:部署后和清理后分别请求首页、结账页的关键CSS/JS,检查200、Content-Type和文件哈希。只测刚切换那一分钟不够。

