Web 服务器Module
模块机制 是什么?
功能都靠模块加载,如 mod_rewrite、mod_ssl、mod_php
类比:插件式工具箱,按需装
怎么工作
Apache 的核心很小,功能都由模块提供,通过 LoadModule 加载,用 a2enmod 启用。模块可以挂到请求处理的各个阶段(认证、重写、内容生成、日志)。
常见模块
这些是部署时最常打交道的。
- mod_rewrite:URL 重写,功能最强也最容易被写错
- mod_ssl:HTTPS 支持
- mod_proxy / mod_proxy_balancer:反向代理与负载均衡
- mod_php:把 PHP 嵌进 Apache(现在更推荐 php-fpm)
- mod_security:WAF,做请求过滤
和 Nginx 的差别
Nginx 的模块要编译进二进制(开源版),加模块得重新编译;Apache 用 DSO 动态加载,改配置即可。这是 Apache 在定制化场景仍有一席之地的原因。