本文详细介绍如何通过Nginx/Apache配置、CDN规则及自动化脚本实现网站被攻击时自动切换至维护页面,包含故障检测逻辑、HTTP状态码优化及SEO友好型维护页面的设计要点。
一、攻击检测与自动切换的核心逻辑
当网站遭遇DDoS、CC攻击或漏洞利用时,可通过以下机制触发维护模式:
1.1 基于流量阈值的触发条件
- 请求频率监控:单个IP每秒请求超过100次
- 异常状态码:5xx错误率突增300%
- 带宽占用:出口流量超过日常峰值500%
二、Nginx实现方案
2.1 主配置修改
2.2 维护模式配置
三、Apache实现方案
四、自动化切换脚本
五、SEO友好型维护页面设计
- 返回503 Service Unavailable状态码
- 包含Retry-After响应头(建议值3600)
- 保留品牌视觉元素和联系方式
- 添加进度状态指示器
六、CDN层实现(以Cloudflare为例)
- 创建页面规则:.domain.com/
- 触发条件:请求数 > 5000/分钟
- 执行动作:转发到自定义维护页面
建议结合监控系统(如Prometheus)设置报警阈值,当CPU负载持续5分钟超过80%时自动触发切换机制。
评论