首页 > 代码库 > windows+php5.5+apache2.4+tomcat+mod_jk配置

windows+php5.5+apache2.4+tomcat+mod_jk配置

原因:

通常情况下apache运行的是80端口,比如apache启动后运行localhost:80就可以出现It works页面,这里的80也可以不写,会默认的。而tomcat启动时默认的端口是8080端口,需要在localhost后面加上8080,但这样比较不专业,域名还带端口,因此我们可以在tomcat的server.xml修改为80。但此时的问题出来了,当已有一个php写的项目在使用apache作为服务时,我们如何将让有php写的项目和jsp写的项目同时运行起来呢,这里就需要用到插件mod_jk,它可以将jsp要访问的url投入到tomcat中由tomcat来进行处理。

  Tomcat直接在官网下载解压就可以了(http://tomcat.apache.org/),当然启动tomcat的前提是你安装了jdk,必将JAVA_HOME=jdk安装目录 放在你的环境变量中了,这个都比较简单,我们主要讲解apache2.4和mod_jk的配置。

一:apache2.4及php5.5及mysql的配置

这部分我也不想多讲可以参考:http://jingyan.baidu.com/article/9faa723152c5d6473d28cb47.html

 

二:mod_jk配置

 首先需要从官网上下载apache版本所对应的mod_jk.so 文件放在apache的modules目录下面

然后在conf目录下面建立两个文件为workers.properties和mod_jk.conf

workers.properties内容:

workers.tomcat_home="D:/apache-tomcat7"
workers.java_home="D:/Tools/java/jdk"
# Defining a worker named worker1 and of type ajp13
worker.list=worker1
# Set properties for worker1
worker.worker1.type=ajp13
worker.worker1.host=localhost
worker.worker1.port=8009
worker.worker1.lbfactor=1

mod_jk.conf内容:(myproject 为jsp的工程名)

 

LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompatUnparsed +ForwardDirectories
JkRequestLogFormat "%w %V %T"

JkMount /servlet/* worker1
JkMount /*.jsp worker1
JkMount /*.action worker1
JkMount /*.do worker1
JkMount /myproject/* worker1

注意:JkOptionszhong中为ForwardURICompatUnparsed不是ForwardURICompat否则会出现乱码

然后在apache的conf目录下httpd.conf中添加:

Include conf/mod_jk.conf

 

三:tomcat配置

将tomcat中server.xml中appBase改名指向你在apache配置工程所存放的位置就可以了。

这样你在浏览器中访问jsp的工程时,apache会自动将你的访问投递到tomcat中进行处理,这样就能实现php和jsp都无需写端口号而可以被访问。

备注:参考文献也有配置virtualHost, 这个可能是当tomcat所使用的端口号不能为外网访问时所做的,这里我没有研究,但是也正常工作了。

 

参考文献:

1:http://jingyan.baidu.com/article/9faa723152c5d6473d28cb47.htmlwin7(64位)php5.5-Apache2.4-mysql5.6环境安装

2: http://wenku.baidu.com/view/9288fa2058fb770bf78a55cf.html?re=viewwindows下apache+tomcat+php+mysql+zend optimizer

3:http://adaishu.blogspot.com/2008/08/apachetomcatstrutsphpmysql-apache.html

4:http://www.iteye.com/topic/80667  Apache+Tomcat+Php+Mysql的集成

5:http://www.linuxquestions.org/questions/linux-software-2/example-servlets-not-working-with-mod_jk-apache2-webserver-and-tomcat6‘s-web-container-692783/

作者:小村长  出处:http://blog.csdn.net/lu597203933 欢迎转载或分享,但请务必声明文章出处。 (新浪微博:小村长zack, 欢迎交流!)

windows+php5.5+apache2.4+tomcat+mod_jk配置