Apache2.2.4+Tomcat5.5.17+JSP+MySQL5的整合
1:准备工作:
首先需要准备安装文件:
Tomcat5.5.17.exe
下载:http://apache.justdn.org/tomcat/tomcat-5/v5.5.17/bin/apache-tomcat-5.5.17.exe
apache_2.2.4-win32-x86-no_ssl.msi
下载:http://apache.mirrors.tds.net/httpd/binaries/win32/apache_2.2.4-win32-x86-no_ssl.msi
Mysql5.0.37
下载: http://mysql.isu.edu.tw/Downloads/MySQL-5.0/mysql-5.0.37-win32.zip
* 注意:这里每个版本都下载安装版,可以减少很多配置,也就是节约你的时间、精力。
2.安装软件
安装tomcat,不用配置。(我的安装路径:D:\app\Tomcat5.5)
打开IE:http://localhost:8080/ 出现小猫说明安装成功!
安装apache,也不用配置. (我的安装路径:D:\app\Apache2.2)
打开IE:http://localhost / 出现“It works!”说明安装成功!
3. 整合apache2.2.4与tomcat5.5.17:
因为apache2.2.4采用mod_proxy连接apache与tomcat,所以配置非常简单。这里我们只需要改动D:\WEBSERVER\Apache2.2\conf\ 下的 httpd.conf即可:
在最后加上:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
ProxyPass / ajp://127.0.0.1:8009/
ProxyPassReverse / ajp://127.0.0.1:8009/
测试:
建立两个测试文件:
test.html 和 test.jsp
test.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> test.html </TITLE>
</HEAD>
<BODY>
<h1>Hello html!</h1>
</BODY>
</HTML>
test.jsp
<%@ page contentType="text/html; charset=GBK" %>
<HTML>
<HEAD>
<TITLE> test.html </TITLE>
</HEAD>
<BODY>
<h1>
<%out.println("Hello JSP!");%>
</h1>
</BODY>
</HTML>
将两个测试文件放在D:\app\Tomcat5.5\webapps\ROOT 下,然后IE输入:
http://localhost/test.jsp, 显示“Hello JSP!”,OK了 输入:
http://localhost/test.html,显示“Hello html!”,OK了!
这主要是因为apache把所有80端口的请求都转发给了tomcat的8009(ProxyPass / ajp://127.0.0.1:8009/ ;ProxyPassReverse / ajp://127.0.0.1:8009/),由tomcat处理请求,这时的apache只相当于一个转发器的作用,由tomcat解析。此时要是关闭tomcat,再访问还会出现Service Temporarily Unavailable 错误!
如果将请求中静态的页面交给apache处理,动态请求交给tomcat处理。因为他们在各自的处理效率上比较高,这也是整合apache和tomcat的一个作用。
这里我们是要将html交给apache处理,而把jsp转发给tomcat处理。
在最后httpd.conf加上:
ProxyPass /html/ !
表示 /images/ 下的请求不转发,原来的(ProxyPass / ajp://127.0.0.1:8009/,ProxyPassReverse / ajp://127.0.0.1:8009/
)配置下的“ / ” 表示全部转发到8009端口(tomcat监听的)。所以这时只要把不想转发到tomcat处理的放在D:\app\Apache2.2\htdocs 下 名为html文件夹的下面即可。比如:我们把
test.html放在D:\app\Apache2.2\htdocs\html 下,
test.jsp放在D:\app\Tomcat5.5\webapps\ROOT下,在分别
http://localhost/html/test.html
就都可以显示我们需要的结果了!
Apache tomcat各司其职。
这里都只是测试,具体项目,appache服务器的其他设置都可以通过在httpd.cong里修改,如改变路径等。顺便说一下:这里的Apache tomcat是通过Mod-proxy连接起来的。Mod-proxy的缺点是,当其中一台tomcat停止运行的时候,apache仍然会转发请求过去,导致502网关错误。但是只要服务器再启动就不存在这个问题。
Mod-proxy优点是.可以只将Apache置于公网,节省公网IP地址资源。可以通过设置来实现Apache专门负责处理静态网页,让Tomcat专门负责处理JSP和servlet等动态请求。缺点是:如果前置Apache代理服务器停止运行,所有集群服务将无法对外提供。
6.安装MySQL
请搜索相关的安装配置方法,这里就不在说明。
7.jsp连接MySQL数据库。
修改test.jsp文件,添加连接连接数据库代码。
8,最终测试
确保MySQL启动,可以连接。
启动TOMCAT,然后启动APPACHE2。
在IE输入http://localhost/test.jsp
显示读取的数据库中的信息,测试通过。