Ubuntu 中 Apache2 模块选择指南
一 选择思路与优先级
二 核心模块推荐清单
| 模块 | 作用 | 何时启用 | 关键配置/要点 |
|---|---|---|---|
| mpm_prefork / mpm_worker / mpm_event | 进程/线程模型,决定并发与资源利用 | 所有站点必选其一 | 见第三部分选择策略 |
| ssl | HTTPS/TLS | 所有对外站点 | 建议启用 HTTP/2(Listen 443 ssl http2),配置证书路径 |
| rewrite | URL 重写 | 使用“美化URL”、路由规则 | 常与 .htaccess 或 |
| expires | 浏览器缓存控制 | 静态资源多、追求性能 | 设置 Cache-Control/Expires |
| deflate | 压缩传输 | 文本/JS/CSS 占比高 | 减少带宽、提升首屏 |
| headers | 响应头管理 | 安全头、跨域、HSTS 等 | 如 Strict-Transport-Security、X-Frame-Options |
| security2(ModSecurity) | WAF/规则防护 | 面向公网、需规则防护 | 需规则集,注意误报与性能 |
| pagespeed | 自动前端优化 | 希望“开箱即用”提速 | 可能与其他优化模块冲突,需测试 |
| proxy / proxy_http / lbmethod_byrequests | 反向代理/负载均衡 | 反向代理、API 网关、多后端 | 与 ProxyPass/ProxyPassReverse 配合 |
| spamhaus | 基于 DNSBL 的 IP 拦截 | 抗垃圾/暴力请求 | 维护白名单与缓存参数 |
| status / info | 运行状态/信息页 | 运维观测 | 仅内网开放,限制来源 IP |
| 以上模块均可通过 a2enmod/a2dismod 管理,启用后执行 systemctl reload apache2 生效。 |
三 关键选择策略
四 安装启用与验证步骤
五 常见场景快速组合