Apache反向代理

现代WEB服务器通常都具备反向代理功能( reverse proxy servver ),也称为网关( gateway )服务器。

httpd 收到客户单请求,会将请求代理到后端服务器,由后端服务器处理请求并生成内容。后端服务器将内容发送给 httpd 服务,再由 httpd 服务生成实际的HTTP响应返回给客户端。

采用反向代理的主要原因是:

  • 安全

  • 高可用性

  • 负载均衡

  • 集中式身份认证和授权

  • 为后端应用服务器提供功能补充: 缓存、压缩或SSL加密

采用反向代理架构,为后端服务器提供了隔离保护;而对于客户端,反向代理服务器是所有内容的唯一来源。

备注

Nginx反向代理 也是非常常用的部署模式

Apache反向代理模块

Apache提供了功能丰富的模块,例如 Apache WebDAV服务器 。对于反向代理,主要使用以下模块:

  • mod_proxy : 用于重定向连接的主要代理模块,允许Apache作为底层应用服务器的网关

  • mod_proxy_http : 添加对代理HTTP连接的支持

  • mod_proxy_balancermod_lbmethod_byrequests : 为多个后端服务器增加负载均衡功能

  • 执行以下命令激活反向代理功能(包括重启服务):

激活Apache 2的反向代理模块
sudo a2enmod proxy proxy_http proxy_balancer lbmethod_byrequests
sudo systemctl restart apache2

待续…

参考