历尽千辛万苦,终于整合完毕,两个不同的域名同时都可以访问了,在这里要非常感谢@sunaer 多谢大哥的指导,在这里把整合经历分享给大家,
本人一个jsp网站+mysql 是用tomcat6.0发布的,一个是asp网站+access数据,同时放到一个服务器上,不知道有什么好的方法,在网上搜了下看到iis+tomcat整合,决定自己整合下试试看,搞了3天,网上资料搜了一大堆,该试的方法都试过了,下面是自己的整合经历
第一步:先下载一个插件 文件名为:isapi_redirect.dll。我用的是1.2.28.0
第二步:创建一个txt文本,里面输入以下内容:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]
"log_file"="D:\\Tomcat6.0\\iislogs\\isapi.log"
"log_level"="error"
"worker_file"="D:\\Tomcat6.0\\conf\\workers.properties"
"worker_mount_file"="D:\\Tomcat6.0\\conf\\uriworkermap.properties"
"extension_uri"="/jakarta/isapi_redirect.dll"
里面的地址要和自己的tomcat安装地址对应,自己修改下,完事之后,把文本更改为.reg格式文件
第三步: 找到tomcat安装目录,--->tomcat 6.0\conf ;
在里面创建两个文件,文件名分别为:workers.properties,uriworkermap.properties;
workers.properties内容如下:
workers.tomcat_home=D:\Tomcat 6.0
workers.java_home=C:\Program Files\Java\jdk1.6.0_10
ps=\
# The advanced router LB worker
worker.list=router
# Define a worker using ajp13
worker.node1.port=8009
worker.node1.host=localhost
worker.node1.type=ajp13
worker.node1.lbfactor=1
# Define another worker using ajp13
#worker.node2.port=9012
#worker.node2.host=localhost
#worker.node2.type=ajp13
#worker.node2.lbfactor=1
# Define third worker using ajp13
#worker.node3.port=9013
#worker.node3.host=localhost
#worker.node3.type=ajp13
#worker.node3.lbfactor=1
# Define the LB worker
worker.router.type=lb
#worker.router.balance_workers=node1,node2,node3
worker.router.balance_workers=node1
worker.router.sticky_session=1
----------------------------------------------------分割线-----------------------------------------------
uriworkermap.properties的内容如下:
/*=router
完毕。
第四步:
在tomcat6.目录中创建一个文件夹,取名为:iislogs,然后在iislogs文件夹里创建一个文件iislogs.log,为空即可
第五步:在tomcat 6.0目录下的conf中创建一个文件夹取名为connector,把第一步下载的插件放进去,isapi_redirect.dll
第六步:修改tomcat 6.0--conf中的server.xml
在<Engine></Engine>节点下,修改
<Host name="www.xxxx.com" appBase="webapps"
unpackWARs="true"
xmlValidation="false"xmlNamespaceAware="false">
<Contextpath="" docBase="项目地址"debug="0" reloadable="true" />
ps:www.xxxx.com为自己的网站地址,docBase为tomcat下存放项目的路径:我的是D:\Tomcat6.0\webapps\root
到此配置所需要的文件已经准备好了,下面开始操作吧,
运行之前创建的reg文件,加入注册表中,查看注册信息:开始-运行-cmd-regedit 按照以下顺序找到注册信息,
HKEY_LOCAL_MACHINE \ SOFTWARE \ ApacheSoftware Foundation \ Jakarta Isapi Redirector \ 1.0,查看里面的信息路径要和自己的tomcat路径保持一致,特别强调:空格也算,路径有空格就加空格,没有就不加:比如:tomcat6.0和tomcat 6.0 是不一样的。
tomcat配置到此结束。(ps:tomcat中的端口为:8080,不需要修改)
下面是IIS服务,
第一步:计算机--管理--服务和应用程序---internet信息服务----网站。新建一个网站,指向自己的tomcat项目如下图所示:
在右侧点右键,新建-网站,点击“下一步”,输入网站描述(内容随便),点击“下一步”,输入“主机头”,如图:
下一步,选择主目录(tomcat下webapps里的项目根目录),勾选“运行匿名访问”,如图:
下一步,在“允许权限”里,勾选“执行…”选项,以支持isapi_redirect,如图:
下一步,完成网站新建。
11、在新建的网站上点右键选“属性”,在弹出的页框里选择“ISAPI筛选器”,点“添加”,筛选器名称填jakarta,可执行文件中填入isapi_redirect.dll的绝对路径(包括文件名),如图:
一路确定。
12、再在“此网站”上右键,选择“新建”->“虚拟目录”,别名填jakarta,下一步,路径选为你的isapi_redirector.dll存放的目录(不包括文件名),下一步,权限中记得把“执行”那项打勾,好了,完成。
13、应用程序扩展名映射:在主目录里点配置,在跳出的窗口应用程序配置中增加.jsp应用程序扩展名映射,可执行文件指向isapi_redirect.dll文件(并且将该输入框中的所有内容用“”括起来,否则会提示应使用()括起来【但此处的()应为“”,是系统汉化时的翻译错误】),动作限制为GET,HEAD,POST,DEBUG (手动输入)如图:
14、在“Internet信息服务管理器”的“网站”中的“Web服务扩展”上点右键选择“添加一个新的Web服务扩展”,
弹出的框中扩展名填JSP(无所谓的,自己随便设置名称),“要求的文件”选“添加”然后找到你的isapi_redirector.dll后“确定”。“设置扩展状态为允许”也打上勾,确定。添加之后,如图:
15、重启IIS,重启Tomcat.
16、检查新建的网站是否加载成功isapi_redirect.dll文件,在网站的属性里,切到筛选器页,
如图则加载成功。
ps:加载失败的情况下,可能是插件权限不够,打开插件所在的位置,右键属性-安全中添加everyone用户权限,--或者在网站jakarta虚拟目录右键--权限-添加权限,重新启动即可,
输入网址试试。如果出现其他的问题,比如还不能网址打不开,检查下,iis装的是否匹配当前操作系统,以及tomcat版本(据说安装版有点不同)。出现 输入网址显示要输入账号密码的情况:一下为修改方式:
打开用户组:
如图选中该用户(iis安装成功,生成的用户),右键修改密码(记住此密码下面要用到),
然后继续回到internet 服务,找到网站右键属性 如下所示:
钻中 启用匿名访问(打钩),找到IUSER_xxxxxxxxxx用户,并输入上一步设置的密码即可,保存-------重新启动iis 和tomcat