Apache与Tomcat的整合其实非常简单
第一种整合方式,使用proxy方式进行整合
使用这种方式,其实apache的最主要的功能就是做转发
打开Apache/conf/httpd.conf
enable以两个module,其实就是找到这两个module,将前面的#号去掉就可以了
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
最httpd.conf尾端加上以下两句话,意思是当访问/doc的时候,将自动转发到8080端口的docs应用
ProxyPass /doc http://localhost:8080/docs
ProxyPassReverse /doc http://localhost:8080/docs
将tomcat启动,apache启动后
访问:http://localhost/doc,跟直接访问http://localhost:8080/docs效果是一样的
第二种方式,使用ajp的方式进行整合
enalbe多一个ajp module,如下所示
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
在httpd.conf下面增加以下的配置
ProxyPass / ajp://127.0.0.1:8009/
ProxyPassReverse / ajp://127.0.0.1:8009/
该配置的意思,对于所有请求,将通过ajp,转发到tomcat
tomcat的配置,打开%TOMCAT_HOME%/conf/servlet.xml
找到
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
检查是否被禁用,如果被禁用掉,将其enable即可
这种整合方式是通过ajp的端口8009进行转发
将tomcat启动,apache启动后
访问:http://localhost/docs,跟直接访问http://localhost:8080/docs效果是一样的
到此,apache跟tomcat的整合就完成了!
整合不整合,其实关键要看一下需求,其实tomcat本身已经提供了http的功能了,如果只是一个内部系统,只有几十人,上百人用,大部分都是MIS系统,那整合其实没有太大的用处。假如是做互联网的应用,对性能要求非常高,必须大部分是新闻类的,那整合将非常必要。并且,还要采用一些策略进行相应的优化!
整合这一块一般由做网络管理的人来做的,一般开发人员很少去做到这一点,有兴趣的朋友可以了解一下。