先确定Apache的proxy_module和proxy_http_module模块已经安装,如果没有,可以通过apxs安装。Apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用LoadModule指令在运行时加载到Apache服务器中。
切换到Apache的源码目录下的modules/proxy,运行命令:
APACHE_PATH/bin/apxs -c -i mod_proxy.c proxy_util.c proxy_http.c
-c执行编译,-i进行安装。运行成功后,会在Apache安装目下的modules下生成mod_proxy.so和mod_proxy_http.so两个动态链接库。
在httpd.conf中,开启模块:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
进行反向代理配置:
ProxyPass /addr_modify/index http://127.0.0.1:8080/addr_modify/index
ProxyPass /static http://127.0.0.1:8080/static
ProxyPassReverse /static http://127.0.0.1:8080/static
ProxyPassReverse /addr_modify/index http://127.0.0.1:8080/addr_modify/index
在需要反向代理的VirtualHost中添加上面的规则,就会将请求该VirtualHost的特定uri时将请求代理给后端。