怎么在Ubuntu系统上启用Apache的代理模块proxy

2025-04-25 06:09:10
推荐回答(1个)
回答1:

mod_proxy是一种分工合作的的形式,通过主服务器跳转到各台主机负责不同的任务而实现任务分工,这种形式不能实现负载均衡,只能提供主服务器的访问跳转 修改apache的httpd.conf文件配置

首先来简单的介绍下proxy_module和proxy_http_module这两个模块的作用:
1.mod_proxy:是一种分工合作的的形式,通过主服务器跳转到各台主机负责不同的任务而实现任务分工,这种形式不能实现负载均衡,只能提供主服务器的访问跳转 修改apache的httpd.conf文件配置
2.mod_proxy_balancer:是mod_proxy的扩展,提供负载平衡支持,通过mod_proxy_balancer.so包实现负载平衡,公司生产服务器暂时就采用这种方式。 修改apache的httpd.conf文件配置
一般常用来做反向代理,一般apache的这些功能我们在编译的时候都是以模块的形式加入的。所以我这里先是看了我的apache中有没有这个模块,结果没有,那么就需要重新编译一下这些模块。

首先看下Ubuntu是否有安装Apache,没有安装的话安装下,
# sudo apt-get update
# sudo apt-get install apache2
# sudo service apache2 restart

怎么在Ubuntu系统启用Apache代理:

你可以使用 a2enmod.来启用这些模块:

# a2enmod proxy

上面的命令会创建一个软连接 /etc/apache2/mods-enabled 指向to /etc/apache2/mods-available.

如果你想通过a2dismod 禁用模块的话,你只需要把mods_enabled这个下面的软连接删掉即可

# a2dismod proxy

然后编辑Apache2的配置文件

# vim /etc/apache2/apache2.conf

然后把下面的配置加进去(加之前要看下这些模块是否都在/usr/lib/apache2/modules)

LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so

保存
:wq!

重启apache2,

# service apache2 restart

看下是否Apache的这些模块启用成功,

# apache2ctl -M | grep proxy
proxy_module (shared)
proxy_http_module (shared)