在windows XP下搭建Apache+Tomcat+JSP+PHP+MYSQL环境

本文详细介绍如何在Windows平台上配置Apache作为Web服务器,Tomcat作为JSP引擎,并实现两者之间的整合。包括安装配置Tomcat、Apache及Mod_jk,设置环境变量,配置workers.properties和httpd.conf文件等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0. Apache、PHP、MYSQL参考:关于Apache+MySQL+PHP在windows平台的整合

1.     Tomcat:

a)      http://www.apache.org下载Tomcat

如:apache-tomcat-7.0.27-windows-x86。直接解压缩到某个目录。

b)     apache-tomcat-7.0.27-windows-x86 改名为tomcat7,如:

E:\WebServer\tomcat7

c)      运行bin目录下catalina.bat设置环境变量

JRE_HOME=C:\Program Files\Java\jre7

JAVA_HOME=C:\Program Files\Java\jdk1.7.0_04

CATALINA_HOME=E:\WebServer\tomcat7

CLASSPATH=./;C:\Program Files\Java\jdk1.7.0_04\lib\dt.jar;C:\Program Files\Java\jdk1.7.0_04\lib\tools.jar;C:\Program Files\Java\jdk1.7.0_04\bin;

在环境变量Path中追加:

%JRE_HOME%;%JAVA_HOME%;%JAVA_HOME%\bin;%CLASSPATH%;

运行startup.bat启动tomcat服务,输入 http://localhost:8080/可以正常显示页面表示OK,可以通过查看源代码确定内容为index.jsp代码,位于tomcat7\webapps下。Webapps就是tomcat作为web server的web root目录。

目前为止,tomcat即充当了JSP的Engine又充当了Web Server.

接下来我们将Apache作为对应的Web Server,tomcat仅当做JSP Engine.


2. 安装Apache httpd服务

搜索"apache httpd"

httpd-2.2.25-win32-x86-openssl-0.9.8y.msi

3.    Mod_jk(Tomcat connector)

http://tomcat.apache.org/download-connectors.cgi

将mod_jk.so复制到

C:\Program Files\Apache Software Foundation\Apache2.2\modules

mod_jk.so要和Apache版本一致,可以均采用最新版本。


4.    相关配置

a)      C:\Program Files\Apache Software Foundation\Apache2.2\conf下创建workers.properties,内容如下:

workers.tomcat_home=E:\WebServer\tomcat7

workers.java_home=C:\Program Files\Java\jdk1.7.0_04

ps=\

#worker.list=ajp13

worker.list=ajp12,ajp13

worker.ajp12.port=8007

worker.ajp12.host=localhost

worker.ajp12.type=ajp12

worker.ajp12.lbfactor=1

worker.ajp13.port=8009

worker.ajp13.host=localhost

worker.ajp13.type=ajp13

worker.ajp13.lbfactor=1

worker.loadbalancer.type=lb

worker.loadbalancer.balanced_workers=ajp12,ajp13

worker.inprocess.type=jni

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar

worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar

worker.inprocess.cmd_line=-config

worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml

worker.inprocess.cmd_line=-home

worker.inprocess.cmd_line=$(workers.tomcat_home)

worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll

worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout

worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr

worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)

参考官方文档:

http://tomcat.apache.org/connectors-doc/reference/workers.html

tomcat worker是开启的服务实例,用来等待来自web server(如Apache)的servlet或其他内容,进行解析,然后返回response给web server.

b)     修改httpd.conf文件

(C:\Program Files\Apache Software Foundation\Apache2.2\conf)

#andy@2014.5.31,add for tomcat connectors
#connecting to tomcat using ajp13
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "E:/WebServer/apache/conf/workers.properties"
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13 
JkMount /WhereAreYou ajp13
JkMount /WhereAreYou/* ajp13


# andy@2014.5.31
#
DocumentRoot "E:/WebServer/tomcat7/webapps"

# andy@2014.5.31
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "E:/WebServer/tomcat7/webapps">


c)         Tomcat服务配置(tomcat7/bin)

service.bat install  #安装tomcat服务,默认为手动

Net Start tomcat7 #开启tomcat服务

Net Stop tomcat7 #关闭tomcat服务

Service.bat remove #卸载tomcat服务

也可以在bin目录下直接运行tomcat实例:

Startup.bat #开启tomcat

Shutdown.bat #关闭tomcat

d)

在ROOT目录下创建 test.jsp文件
           
            <%@ page contentType="text/html;charset=gb2312"%>
          <%out.print("Tomcat And Apache JSP Success");%>

5. 停止tomcat,apache服务器,重新启动。

输入
http://localhost/
http://localhost:8080/
http://localhost/test.jsp

应该正常显示html和jsp信息,则成功关联tomcat和apache。
可以停止tomcat,测试JSP是否能解析,不能解析则正常。

如果不正常,停止tomcat,重新解压缩tomcat,覆盖现在的文件再测试。

编写servlet测试:添加相应转发语句(WhereAreYou)

#andy@2014.5.31,add for tomcat connectors
#connecting to tomcat using ajp13
LoadModule jk_module modules/mod_jk.so
JkWorkersFile "E:/WebServer/apache/conf/workers.properties"
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13 
JkMount /WhereAreYou ajp13
JkMount /WhereAreYou/* ajp13

 

6. 下载安装 mysql

mysql-5.6.10-win32 (1)


7. JDBC驱动下载安装

官方下载:http://dev.mysql.com/downloads/connector/j/ 需要注册

这个网站不需要注册:

http://mirror.services.wisc.edu/mysql/Downloads/Connector-J/


关联mysql,将mysql-connector-java-5.1.20-bin.jar复制到tomcat下的lib目录下

 

将对应的jar复制到tomcat的lib下,然后重启tomcat

写一段连接MYSQL数据库的代码测试一下:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*"%>

<html>

<body>

<%

Class.forName("com.mysql.jdbc.Driver").newInstance();

String url ="jdbc:mysql://localhost/test?user=&password=&useUnicode=true&characterEncoding=8859_1";

//test为你的数据库名,用户名和密码根据情况输入

Connection conn= DriverManager.getConnection(url);

Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

String sql="select * from staff";

ResultSet rs=stmt.executeQuery(sql);

while(rs.next()) {%>

您的第一个字段内容为:<%=rs.getString(1)%>

您的第二个字段内容为:<%=rs.getString(2)%>

<%}%>

<%out.print("Success");%>

<%rs.close();

stmt.close();

conn.close();

%> 

</body> 

</html>


8.    测试

重启tomcat,apache,在浏览器输入:http://localhost:8080/ 能显示正常表示tomcat运行正常;输入法http://localhost/能显示正常,则表示tomcat+apache组合OK,apache能调用tomcat connector解析JSP.

http://localhost/index.php也能正常显示,表示PHP工作正常.

9.    FAQ

a)      启动Apache提示一下错误(logs/error.log)

Cannot load C:/Program Files/Apache Software Foundation/Apache2.2/modules/mod_jk.so into server

Mod_jk.so的版本一定要与Apache的版本一致.

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.18/mod_jk-apache-2.2.2.so

      

b)     主要配置文件中行末的空格也要去掉,避免解析错误。

c)      如果tomcat不能正常运行http://localhost:8080/ 可以重新解压缩覆盖之前的文件,workers.properties不用变。重新运行基本就没有问题了。

10.    参考资料:

a)      http://www.knowsky.com/344534.html

b)         其他网页资料,不一一列举了

 

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值