查看apache运行状态

ps -eaf|grep httpd

查看apache安装环境

httpd -V

查看apache网络状态,包括端口等

netstat -anp|grep httpd

打开httpd.conf

确认proxy模块加载没有被注释掉

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

在文件末尾加上代理配置路径

ProxyPass /console http://localhost:8080/console
ProxyPass /p_w_picpaths http://localhost:8080/p_w_picpaths
ProxyPa***everse / http://localhost:8080/

注意最后一行,对于根路径代理,一定要在端口末尾加上斜杠

也可以配置多个服务路径

ProxyPass /PBS http://172.16.64.141:7080/PBS
ProxyPa***everse /PBS http://172.16.64.141:7080/PBS
ProxyPass /geoserver http://localhost:8080/geoserver
ProxyPa***everse /geoserver http://localhost:8080/geoserver
ProxyPass / http://localhost:9080/
ProxyPa***everse / http://localhost:9080/

不同端口和地址的服务ProxyPass和ProxyPa***everse最好成对出现,否则会出现重定向失败的错误,如重定向到localhost之类。

注意:如果在web项目中调用了其它地址的服务,路径最好写成相对路径。正好可通过代理完成保证相对路径资源的可用性。


参考资料:apache反向代理配置