原创文章,转载请注明出处:http://www.aj2ee.com
Linux下java web服务器搭建(JDK1.6、MySQL5.1、Apache2.2+2Tomcat6+svn1.6)
四、apache与tomcat整合
软件准备:
用于apache与tomcat通信的jk 模块mod_jk.so下载地址:
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/
tomcat-connectors-1.2.32-src.zip
这里有apache、tomcat整合的配置文件,还有jk源代码,我下载只是为了要里面的配置文件
tomcat-connectors-1.2.32-src.zip这里有四个配置文件:
httpd-jk.conf
workers.properties
uriworkermap.properties
workers.properties.minimal
现在我用到的的只有httpd-jk.conf和workers.properties,将这两个文件复制到/etc/httpd/conf文件夹下。
1.先装两个tomcat,一个Tomcat6_1,另一个Tomcat6_2
Tomcat6_1修改service.xml文件中的如下信息:
<Server port="18005" shutdown="SHUTDOWN">
<Connector port="18080" redirectPort="8443"
maxHttpHeaderSize="8192" useBodyEncodingForURI="true"
minProcessors="100" maxProcessors="5000"
maxThreads="5000" minSpareThreads="1000" maxSpareThreads="4000"
enableLookups="false" acceptCount="3500"
compression="on" compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
connectionTimeout="60000" disableUploadTimeout="true" debug="0" URIEncoding="UTF-8"/>
<Connector port="8109" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="node1">
<Host name="localhost" appBase="/usr/www"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
将下面这句的注释去掉
<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
Tomcat6_2 修改service.xml文件中的如下信息:<Server port="28005" shutdown="SHUTDOWN">
<Connector port="28080" redirectPort="8443"
maxHttpHeaderSize="8192" useBodyEncodingForURI="true"
minProcessors="100" maxProcessors="5000"
maxThreads="5000" minSpareThreads="1000" maxSpareThreads="4000"
enableLookups="false" acceptCount="3500"
compression="on" compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
connectionTimeout="60000" disableUploadTimeout="true" debug="0" URIEncoding="UTF-8"/>
<Connector port="8209" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="node1">
<Host name="localhost" appBase="/usr/www"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
将下面这句的注释去掉
<ClusterclassName="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
其实只是端口不要一样而已,不然tomcat无法启动。
2. 新建/usr/www目录。[root@localhost home]# cd /usr
[root@localhost usr]# mkdir www
[root@localhost usr]#
将其中一个tomcat webapps文件夹下的目录拷贝到/usr/www下
3. 在/etc/httpd/conf下新建一个httpd-vhosts.conf文件,这是虚拟主机的配置文件,内容如下<VirtualHost *:80>
ServerAdmin front.tang@qq.com
ServerAlias fronttang.com *.fronttang.com
DirectoryIndex index.html index.jsp login.jsp
DocumentRoot "/usr/www/ROOT"
ServerName www.fronttang.com
ErrorLog "logs/dummy-host2.FrontTang.com-error.log"
CustomLog "logs/dummy-host2.FrontTang.com-access.log" common
JkUnMount /*.gif loadBalancer
JkUnMount /*.jpg loadBalancer
JkUnMount /*.png loadBalancer
JkUnMount /*.css loadBalancer
JkUnMount /*.js loadBalancer
JkUnMount /*.mid loadBalancer
JkUnMount /*.jpeg loadBalancer
JkUnMount /*.txt loadBalancer
JkUnMount /*.mp3 loadBalancer
JkUnMount /*.swf loadBalancer
JkUnMount /*.wmv loadBalancer
JkUnMount /*.zip loadBalancer
JkUnMount /*.rar loadBalancer
JkUnMount /*.pl loadBalancer
JkMount /*.jsp balancer
JkMount /*.action balancer
JkMount /*.do balancer
JkMount /*.html balancer
JkMount /jkstatus jk-status
JkMount /jkmanager jk-manager
JkMount /proxoolAdmin balancer
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Deny from all
</Directory>
<Directory "/usr/www/ROOT">
Options Includes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory "/usr/www/ROOT/WEB-INF">
Order allow,deny
Deny from all
</Directory>
</VirtualHost>
4.修改/etc/httpd/conf/httpd.conf文件,增加下面的内容
Includeconf/httpd-jk.conf
Includeconf/httpd-vhosts.conf
将下载得到的mod_jk-1.2.31-httpd-2.2.x.so文件重命名为mod_jk.so放入/etc/httpd/modules下
我将我的博客程序放到了/usr/www/ROOT下。启动两个tomcat服务,再启动httpd服务,再看看效果[root@localhost usr]# /usr/Tomcat6_1/bin/startup.sh
Using CATALINA_BASE: /usr/Tomcat6_1
Using CATALINA_HOME: /usr/Tomcat6_1
Using CATALINA_TMPDIR: /usr/Tomcat6_1/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/Tomcat6_1/bin/bootstrap.jar
[root@localhost usr]# /usr/Tomcat6_2/bin/startup.sh
Using CATALINA_BASE: /usr/Tomcat6_2
Using CATALINA_HOME: /usr/Tomcat6_2
Using CATALINA_TMPDIR: /usr/Tomcat6_2/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/Tomcat6_2/bin/bootstrap.jar
[root@localhost usr]# service httpd restart
停止 httpd: [确定]
启动 httpd: [确定]
[root@localhost usr]#