1. 为JSP和Servlet配置WindowsXP(SP2)+Apache 2.0.52+Tomcat 5.0.28+JDK 1.5.0_09+mod_jk2.0.4整合
第一步:下载所需的安装文件
Tomcat 5.0.28
下载地址:http://tomcat.apache.org/download-55.cgi#5.0.28 选择Windows Service Installer
Apache 2.0.52
下载地址:http://httpd.apache.org/download.cgi 选择apache_2.2.3-win32-x86-no_ssl.msi
JDK 1.5.0_07
下载地址:http://apache.justdn.org/tomcat/tomcat-connectors/jk2/binaries/win32/ 选择jakarta-tomcat-conne..>
第二步:安装和配置J2SDK
安装J2SDK以后,需要配置一下环境变量。 在我的电脑>属性>高级>环境变量>系统变量中添加以下环境变量: JAVA_HOME=C:/Program Files/Java/jdk1.5.0_09 classpath=.;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar; (.;一定不能少,因为它代表当前路径) path=%JAVA_HOME%/bin 接着可以写一个简单的java程序来测试JDK是否已安装成功: public class Test{ public static void main(String args[]){ System.out.println("This is a test program."); } } 将上面的这段程序保存为文件名为Test.java的文件。 然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令 javac Test.java java Test 此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。
第三步:安装Tomcat
安装到D:/Tomcat5.0.28. 安装过程中,选择安装Services,将Tomcat加载到系统服务中。将默认的端口8080改为8090。(因为机器上安装了ORACLE,它的默认端口是8080,会造成端口冲突。)
第四步:安装和配置Apache
安装到D:/Apache2 Domain和ServerName建议为:localhost 需要配置http.conf :
1.
解决中文显示问题。 注释掉"AddDefaultCharset ISO-8859-1",然后在"#AddDefaultCharset ISO-8859-1"下面添加如下三行: AddDefaultCharset GB2312 DefaultLanguage GB2312 AddLanguage zh-cn .cn
2.
设置默认页:DirectoryIndex 默认页文件名 如 DirectoryIndex index.html index.html.var index.jsp
3.
配虚拟主机 在文档的最后添入如下内容: <VirtualHost localhost> ServerAdmin admin@sina.com #随便填一个就行了 DocumentRoot "D:/Tomcat5.0.28/webapps/ROOT" #虚拟主机文档目录 由于是与Tomcat配合使用 所以使用Tomcat的默认目录 ServerName localhost DirectoryIndex index.htm index.html index.jsp ErrorLog logs/dummy-host.example.com-error_log CustomLog logs/dummy-host.example.com-access_log common </VirtualHost>
第五步: A+T 整合
说明: %APACHE_HOME% 为apache的安装目录。 %TOMCAT_HOME% 为Tomcat的安装目录。 整个过程中不需要设置环境变量。 Tomcat安装服务端口是 8090。 Apache安装服务端口是 80。
1.
拷贝 mod_jk2.so 到 %APACHE_HOME%/modules
2.
确信 mod_jk2.so 可读(对于system用户,文件属性>安全)
3. Tomcat
端通过jk2.properties文件使用JK2。在%TOMCAT_HOME%/conf目录中已经有jk2.properties文件,用如下内容覆盖原内容: # # Socket configuration # handler.list=request,container,channelSocket
# # socket configuration # channelSocket.port=8009 channelSocket.address=127.0.0.1 channelSocket.maxPort=port+10
4.
确信这个文件可读(对于System用户)
5.
创建 workers2.properties 文件,文件具体内容如下
# # basic workers2.properties file #
# # shared memory # [shm] file= Apache
安装路径/logs/shm.file # # 需要改动的地方,填写apache安装的绝对路径, # 比如 C:/Program Files/Apache Group/Apache2/ size=1048576
[workerEnv:] info=Global server options timing=1 debug=0
# # IP socket channel # [channel.socket:localhost:8009] port=8009 host=127.0.0.1
# # define the ajp13 worker # [ajp13:localhost:8009] channel=channel.socket:localhost:8009
# # Uri mapping - jsp files only #
下面使用的是根目录/*.jsp ,可以更改 [uri:/*.jsp] worker=ajp13:localhost:8009
# # Uri mapping - all servlets #
可以更改servlet [uri:/*] workers=ajp13:localhost:8009
6.
把这个文件放入 %APACHE_HOME%/conf
7.
确信这个文件可读(对system用户)
8.
创建 shm.file 文件. 下面提供一个方法去创建shm.file 命令行方式进入 %APACHE_HOME%/logs ,输入 copy con: > shm.file 回车 多次回车来输入一些空行,然后按ctrl+z 回车退出。
9.
确信 shm.file 在%APACHE_HOME%/logs/目录里,确信 shm.file 文件可写
10.
在 %APACHE_HOME%/conf/httpd.conf 中添加加载 mod_jk2.so 信息 在此文件中会看到一堆LoadModule(可以查找LoadModule)的加载模块, 在此处添加如下信息:
LoadModule jk2_module modules/mod_jk2.so 13.
关闭apache服务器
14.
关闭tomcat服务器
15.
重新启动tomcat服务器
16.
通过浏览http://localhost:8080来测试tomcat是否启动(http://不要省略) 如果使用 localhost 发现不行的话,换成你的 IP
17.
启动apache服务器
18.
测试下面的链接:
打开页面中左侧的链接 Examples --> JSP Examples
19.
比较下面的链接:
打开页面中左侧的的链接 Examples --> JSP Examples
20.
分别运行几个JSP Examples中的例子,如果运行结果一样的话,说明tomcat和apache 已经整合在一起了。
2.为apahce配置URL重写(伪静态)
把如下内容保存为
.htaccess
添加到网站的目录下:
# 将 RewriteEngine 模式打开
RewriteEngine On
# 修改以下语句中的 / 为你的网站目录地址,如果程序放在二级目录中,如/phpcms 请将 / 修改为 /phpcms
RewriteBase /
# Rewrite 系统规则,添加或者修改请根据其规则
RewriteRule ^(.*)show-([0-9]+)-([0-9]+)/.html$ $1/show.jsp?itemid=$2&page=$3
RewriteRule ^(.*)list-([0-9]+)-([0-9]+)/.html$ $1/list.jsp?catid=$2&page=$3
RewriteRule ^(.*)show-([0-9]+)/.html$ $1/show.jsp?specialid=$2