Fork me on GitHub

IIS5和Tomcat6整合,实现IIS5支持ASP(.NET)+PHP+JSP

环境描述:

Windows XP SP3

IIS5.Net1.12.03.03.54.0PHP5

任务目标:

使本机IIS可以支持JSP,也就是可以同样使用80端口而不是8080端口就可以访问JSP

通关物品:

Tomcat6

isapi_redirector2.dll

workers2.propertiesjk2.properties文件

说明:

通关后,IIS5的主目录设为C:\Inetpub\wwwroot\ROOTTomcat6appBase则指向C:\Inetpub\wwwroot

开始通关:

1、安装Tomcat6,安装成功后浏览器访问http://localhost:8080,显示Tomcat欢迎页,安装成功。(本文默认本机Tomcat6安装到C:\Program Files\Apache Software Foundation\Tomcat 6.0目录下)

2、下载isapi_redirector2.dll文件并保存到C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\connector。(事实上保存到哪里都可以,配置过程中只要修改相应的指向路径即可)

3、C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf下建立workers2.propertiesjk2.properties两个文件(新建文本重命名即可),内容如下:

workers2.properties[shm]
# file的值要根据实际情况做修改
file=C:/Program Files/Apache Software Foundation/Tomcat 6.0/logs/jk2.log
size=1048576

# Example socket channel, override port and host.
[channel.socket:localhost:8009]
port=8009
host=127.0.0.1

# define the worker
[ajp13:reynir_net:8009]
channel=channel.socket:localhost:8009

# Uri mapping
[uri:/*.jsp]
[uri:/web/*]
[uri:/view/*]
worker=ajp13:localhost:8009

# define the worker
[status:status]

# Uri mapping
[uri:/jkstatus/*]
worker=status:status
jk2.propertiesrequest.tomcatAuthentication=false

4、修改注册表,为isapi_redirector2.dll提供必须的参数:
在任意位置新建注册表文件isapi_redirect.2.0.reg,内容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector]
[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\2.0]
"serverRoot"="C:\\Program Files\\Apache Software Foundation\\Tomcat 6.0"
"extensionUri"="/jakarta/isapi_redirector2.dll"
"workersFile"="C:\\Program Files\\Apache Software Foundation\\Tomcat 6.0\\conf\\workers2.properties"
"logLevel"="DEBUG"
其中,serverRootworkerFile的值要根据实际情况做相应修改,本机绝对路径中使用“\\”来分隔,extensionUri的值不要修改。
执行这个注册表文件将值导入系统注册表。

5、修改IIS设置:
打开“
Internet 信息服务”,在“你的计算机”-“网站”-“默认网站”上点击右键,选“属性”,点击“ISAPI筛选器”选项卡,点“添加”按钮,名称为“jakarta”,可执行文件就是“isapi_redirector2.dll”文件的完整路径。


完成之后一路“确定”退出所有对话框。
还是在“默认网站”上点击右键,新建虚拟目录,别名一定是“jakarta”,路径是“isapi_redirector2.dll”文件所在的目录,最后要加上“执行”权限,再一路“确定”退出所有对话框。

6、统一IIS5Tomcat6的根目录:
文本编辑器打开C:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\server.xml,找到<Host />节,参考如下修改:
<Host name="localhost"  appBase="C:\\Inetpub\\wwwroot\\"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false" ></Host>
name属性为主机名,就是俗称网址,一个站点可以绑定多个主机名,每一个主机名就是一条<Host />节;
appBase属性就是Tomcat的主目录,初始值为“webapps”,是相对路径,相对于Tomcat的安装目录,需要注意,当设置绝对路径时要用“\\”来分隔,而且Tomcat的站点根目录是在这里设置的主目录下的ROOT目录中,所以这里虽然设置为“C:\\Inetpub\\wwwroot\\”,实际上要在wwwroot下新建一个名为ROOT的文件夹。
修改好后保存server.xml文件,重启Tomcat6,随便写一个JSP测试页保存到c:\inetpub\wwwroot\ROOT下,例如:index.jsp,内容为Now time is: <%=new java.util.Date()%>,然后浏览器访问http://localhost:8080/index.jsp,看到当前时间,说明Tomcat主目录设置成功。
打开“Internet 信息服务”,在“你的计算机”-“网站”-“默认网站”上点击右键,选“属性”,在“主目录”选项卡中把“本地路径”修改为“C:\Inetpub\wwwroot\ROOT”,一路“确定”退出对话框。至此,你可以再次重启一下Tomcat6IIS5,然后进入下一步。

7、激动人心的一刻:
在确保IIS5Tomcat6服务都正常开启的情况下,浏览器访问http://localhost/index.jsp,看到了吗?再开一个网页,访问http://localhost:8080/index.jsp,怎么样,两个页面结果是不是一样的?是的,已经成功了,至此,一个即支持ASP.NET),又支持PHP,同时还支持JSPIIS已经在你的机器上运行起来了!
不放心?
ROOT目录下再新建一个index.php,内容为<?php phpinfo(); ?>,浏览器访问http://localhost/index.php,将会显示php配置信息。
ROOT目录下新建一个index.asp,内容为<%="Hello WorldIIS仍然可以解析ASP文件!"%>,浏览器访问http://localhost/index.asp,怎么样?

本次通过记录暂到这里。

 

由于配置历时太长,而且在我写这篇文章时页面还停止响应一次,所以文章中难免会有点疏漏,欢迎交流指正。


posted @ 2010-06-06 19:06  豌豆爸爸Aaron  阅读(2359)  评论(3编辑  收藏  举报