前些天在做Apache通过JK实现多Tomcat负载均衡集群时,参考网上的配置将配置文件配置好后,访问已存在tomcat中的JSP文件时发现Apache提示URL不存在,然后检查了配置文件及tomcat工程部署,发现配置部署均无问题。尝试访问Apache静态页面,通过http单独访问tomcat均无问题。然后我猜会不会之前参考的网上的配置有问题,于是继续查询网上其它配置发现都差不多,尝试更改各种参数均没有解决。后来我仔细想了想出现这个问题的原因应该是Apache没有将HTTP请求分发给Tomcat处理(即Apache反向代理不成功)。也就是Apache根本没有实现反向代理的功能。最后还是将问题定位到了配置文件上,而且应该就是Apache的配置文件哪里有问题。但检查和N遍,尝试过各种配置的改动均没有解决。网上搜索好久也没有找到解决方法,而且好像遇到这问题的人不多。于是这个问题一直困扰着我,十几天了。我就是这么掘的一种性格,这个没有解决心里一直不舒坦。终于老天不负有心人,今天在网上又找了一些使用Apache通过JK实现多Tomcat负载均衡的配置看了看。终于看到http://www.iteye.com/topic/1126930这么一个帖子其中有这么一个配置:去掉
Include conf/extra/httpd-vhosts.conf的注释,启发了我,这个帖子中讲到了增加虚拟主机的配置,因为要增加虚拟主机的配置所以需要去掉 Include conf/extra/httpd-vhosts.conf的注释将虚拟主机配置功能打开。然后我检查了我的Apache中httpd.conf配置文件的Include conf/extra/httpd-vhosts.con这一行,发现没有注释掉,默认就是打开了虚拟主机配置功能,而我根本没有使用也没有增加虚拟主机的配置啊。于是乎我试把这一行注释掉,也就是关闭虚拟主机配置功能。结果奇迹出现,问题解决了。这么一个小小的配置困扰了我十几天。哦,差点忘记了我使用的Apache版本是最新版2.4.不是以前版本是不是默认将这功能关闭了,所以不会遇到这问题。哎,没经验真可怕!一个小小的默认配置改动,困扰了我们这些新手。在此再次感谢http://www.iteye.com/topic/1126930这个贴子的主人,要不是看到这帖子受到启发,这问题还不知道要困扰多久呢?也以此文作为纪念,以后再遇到这问题就可以快速度解决了。希望我的这遍博文也能帮助到同样遇到类似问题小伙伴们。