您的位置:首页 > 运维架构 > Tomcat

Apache2.2.4+PHP5.2.0+Tomcat5.0配置指南!

2007-08-11 23:12 357 查看
前端时间跟朋友合作做了一个项目, 产品用到了Tomcat和PHP,我使用了Apache进行了集成, 由于以前没有配置过PHP,后来也是在网上找资料,慢慢摸索,最后成功配置! 由于整个过程确实比较繁琐, 特写下来与大家共享(其中也参考了网上的指南):

 

一 安装
(这里的环境操作系统是Windows 2000,在windows xp或2003下也应该支持,但没有亲身测试过):
1.       安装HTTP服务器 Apache2.2:
通过以下链接下载Apache2.2并安装成功:
http://apache.mirror.phpchina.com/httpd/binaries/win32/apache_2.2.4-win32-x86-no_ssl.msi
提示1: 安装时注意把安装目录设为c:/Apache2.2;
提示2: 安装过程中需要输入邮件地址,这里一定要输入, 否则完成后再配置就比较麻烦(运行Apache时会出错)
提示3: 使用端口80
测试是否安装成功: 安装完成后, 启动Http Server(所有程序->Apache Http Server 2.2.4àControl Apache Server—)Start), 新开一个浏览器并输入http://localhost/, 假如出现了”It works” 则证明安装成功
2.       安装PHP5.2.0(解压版)
通过该网站(http://www.tech126.com/html/soft/php/20070703/1575.html) 找到PHP5.2.0下载并解压, 或直接访问http://cn.php.net/distributions/php-5.2.0-Win32.zip 得到该压缩软件, 下载完成后解压,假设解压到E盘根目录, 路径应该是E:/php-5.2.0-Win32. php5.2.0注意必须是解压版, 如果是msi安装版则其配置有可能是不同的, 这里不再陈述
3.       安装JDK1.5.0:
去Sun的官方网下载JDK1.5.0 update 12,这里给出一个链接:
http://java.sun.com/javase/downloads/index_jdk5.jsp 选择页面中第3个(JDK 5.0 Update 12)点按钮,并根据提示跳转两个页面后到达一个下载页面, 由于这里需要的是windows运行环境, 挑选JDK时是Windows Platform - Java Development Kit 5.0 Update 12即可,可选择离线版或者在线版。
安装完成后,在windows中增加环境变量指向jdk目录(我的电脑à属性à高级à环境变量)新建:变量名为JAVA_HOME, 值为c:/jdk1.5.0_12.
(安装时注意把安装目录设为C:/jdk1.5.0_12
4.       安装Tomcat5.0
从以下地址下载并安装:
http://apache.mirror.phpchina.com/tomcat/tomcat-5/v5.0.28/bin/jakarta-tomcat-5.0.28.exe
假设安装路径为E盘根目录, 安装后Tomcat目录为E:/Tomcat 5.0

. 集成配置
apache2.2, PHP5.2.0以及Tomcat5.0运行集成运行在一起, 其集成配置对于一个生手来讲还是比较复杂的, 这里将详细描述期集成过程(该集成已经经实际操作过,如果不成功请确认每一个细小步骤是否有遗漏或错误)
1.       Apache2.2和PHP5.2.0的集成配置
1)Apache,配置conf文件(conf文件指在apache目录/conf/httpd.conf文件):
1. 在加载模块区添加:
  LoadModule php5_module E:/php-5.2.0-Win32/php5apache2_2.dll    //这个变了,记得以前是php5apache2.dll
2. 在添加类型区添加:
  AddType application/x-httpd-php .php        //使apache能处理php类型的文件
  AddType application/x-httpd-php-source .phps
3. ScriptAlias /php/ “ E:/php-5.2.0-Win32”    //指定PHP脚本的目录,这个没变
4.改DocumentRoot的时候要注意在修改目录的时候,一定要修改两个地方
  DocumentRoot “D:/…...”
 与 <Directory “D:/…..”> 两地方的路径要一致,不然会发送访问拒绝的错误.
5. 定位DirectoryIndex:   
<IfModule dir_module>
    DirectoryIndex index.php index.php.var index.htm index.htm.var index.xml index.xml.var
</IfModule>
   这里比以前多了<IfModule dir_module>标签.
   
6.AddDefaultCharset  这个属性找不到了!估计字符问题APACHE已经使用标准的编码方式.
2)PHP
1. 把php目录下的php.ini-dist改名为php.ini复制到c:/windows(或:/winnt视操作系统而定),把php5ts.dll和libmysql复制到c:/windows/system32(或:/winnt/system32视操作系统而定)下
  也可以设个PHPRC的环境变量指定php.ini的位置
2. 打开E:/php-5.2.0-Win32下的php.ini文件,查找extension_dir,按以下进行添加:
   extension_dir = “extension_dir = “E:/php-5.2.0-Win32/ext””   //PHP5.0安装目录里的ext文件夹用于定位DLL文件
  在extension区选择一些常用的PHP的DLL文件:
   extension=php_mysql.dll   //扩展php_mysql.dll,可以使用mysql语句了
   extension=php_gd2.dll     //允许建立,修改图片
   extension=php_ming.dll    //swf支持
   extension=php_dbase.dll   //maplab需要php_dbase支持
  这些因人而异什么时候需要什么时候加,有的时候还要另外下载dll文件
3. 修改c:/windows/system32下的php.ini文件找到文件中对应变量并进行修改:
session.save_path = “C:/Apache2.2/ymiao/sessiontmp”   这个是设定会话变量的路径
session.auto_start =1 //自动开始会话变量   
cgi.force_redirect = 1改成 cgi.force_redirect = 0 
   这样做是强迫不运行在cgi模式下
register_globals  默认  Off,改成on
3) 测试集成是否成功:
创建一个文件(名为index.php), 加入以下内容
php works!
把该文件放到apache安装目录/htdocs/下, 重启apache,并新开一个浏览器, 输入http://localhost/index.php, 如果看到上面输入的内容则说明php和apache集成成功
2.       Apache2.2和Tomcat 5.0 集成配置
1)apache端,
a.将mod_jk-apache-2.2.4.so文件(此文件是关联Apache和Tomcat的运行文件)到apache安装目录/ modules/下
b.配置httpd.conf文件,将以下内容加入到conf文件的最末端:
#设置Apache与Tomcat之间的连接,让Apache遇到jsp文件时,在后台将其交由Tomcat去处理
LoadModule jk_module modules/mod_jk-apache-2.2.4.so
 
JkWorkersFile "E:/Tomcat 5.0/conf/workers.properties"
 
JkLogFile "E:/Tomcat 5.0/logs/mod_jk2.log"
 
JkLogLevel info
 
#CustomLog logs/shsc-access_log.txt common
 
#让Apache支持对servlet传送,用以Tomcat解析
JkMount /servlet/* ajp13 
 
JkMount /*.jsp ajp13
 
JkMount /*.fc ajp13 JkMount /join ajp13
 
JkMount /css/* ajp13
 
JkMount /bdunion.txt ajp13
 
JkMount /pictures/* ajp13
 
JkMount /images/* ajp13
 
JkMount /getpwd ajp13
 
JkMount /addresearchvote ajp13
 
JkMount /research/* ajp13
 
JkMount /logout ajp13
 
JkMount /js/* ajp13
 
JkMount /dwr/* ajp13
 
JkMount /about ajp13
 
JkMount /duty ajp13
 
JkMount /faq ajp13
 
JkMount /privacy ajp13
 
JkMount /login ajp13
 
JkMount /verifycode ajp13
 
JkMount /search/* ajp13
 
JkMount /search ajp13
 
JkMount /contact ajp13
 
JkMount /member/* ajp13
 
2)Tomcat端:
a.       创建一个文件(名为mod_jk2.log),放到在tomcat安装目录/ logs目录下
b.       创建一个文件(名为),放到tomcat安装目录/conf目录下,在文件中增加内容
workers.tomcat_home=E:/Tomcat 5.0 #让mod_jk模块知道Tomcat
workers.java_home=C:/jdk1.5.0_11 #让mod_jk模块知道j2sdk
ps=/ worker.list=ajp13 #模块版本,现有ajp14了,不要修改
worker.ajp13.port=8009 #工作端口,若没占用则不用修改
worker.ajp13.host=localhost #本机,若上面的Apache主机不为localhost,作相应修改
worker.ajp13.type=ajp13 #类型 worker.ajp13.lbfactor=1 #代理数,不用修改
c.       (如果tomcat安装目录/conf下没有这个文件)创建jk2.properties并放到该目录下, 在文件中加入以下内容:
## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED
## WHEN YOU EDIT THE FILE.
 
## COMMENTS WILL BE _LOST_
 
## DOCUMENTATION OF THE FORMAT IN JkMain javadoc.
 
# Set the desired handler list
# handler.list=apr,request,channelJni
#
# Override the default port for the socketChannel
# channelSocket.port=8019
# Default:
# channelUnix.file=${jkHome}/work/jk2.socket
# Just to check if the the config is working
# shm.file=${jkHome}/work/jk2.shm
 
# In order to enable jni use any channelJni directive
# channelJni.disabled = 0
# And one of the following directives:
 
# apr.jniModeSo=/opt/apache2/modules/mod_jk2.so
 
# If set to inprocess the mod_jk2 will Register natives itself
# This will enable the starting of the Tomcat from mod_jk2
# apr.jniModeSo=inprocess
3)测试Tomcat和Apache集成是否成功:
启动Tomcat(Tomcat安装目录/bin/startup.bat,重启Apache, 新打开浏览器并输入http://localhost/index.jsp 如果看到出来的是Tomcat欢迎界面则说明集成成功!
 
经过以上的大步骤, 完成了运行环境的安装以及集成配置, 这是最复杂的部分, 恭喜你!
注: 以上配置在我的比客书评网(http://www.bikee.com.cn)中正式运行, 如果完全对上, 应该没有问题,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息