windows 2008 enterprise 64位环境下iis7.5和tomcat7的整合研究

时间:2022-10-28 00:11:39

2016.12.28-16:32

状态:已经整整配置了两天,问题依旧没有解决

把安装包重新卸载重新下,全部改为64位安装包:jdk-7u17-windows-x64,apache-tomcat-7.0.73。

我的cpu是Intel(R)  Xeon(R) CPU E5-2609 0 @ 2.40GHz,经查,是属于x64或者x86-64,不是ia64,不是i386,也不是amd64.

以下百度搜索引擎很多配置都是复制粘贴,有些不一样的均设置过,依然不能成功:

http://www.server110.com/apache/201404/10310.html

http://blog.csdn.net/geloin/article/details/7668751

http://blog.chinaunix.net/uid-29618857-id-4262125.html


最后一次配置错误截图为:


现在打算*看国外牛人的配置,若有进展,持续更新。。。


2016.12.28 - 22:38

刚刚看到有个网站有整合iis和tomcat的最简单的方法(这个方法有待商榷,后面会详细介绍):

http://tomcatiis.riaforge.org/

youtube上有视频怎么配置,下面为某人的中文版(若本博客的所有链接的原版主有版权问题,请联系我删掉)

http://blog.csdn.net/zhang_hui_cs/article/details/9399373

中文版不是很详细,建议仔细看youtube视频15分钟的。

配置中很关键的一点:点击connector_setup.exe(视频有讲的按照视频来,视频没讲的就默认),由于第一次没看视频,用中文版,有的没讲,关键是在选择select websites这一项,我这里有两个网站,一个是之前服务器配置好的很多asp的网站名称为default,还有就是刚刚新建的tomcatsite,重点是千万不要将default打勾,默认是勾上的,一定要去掉!一定要将default上的勾去掉!!!一定要将default上的勾去掉!!!一定要将default上的勾去掉!!!一定要将default上的勾去掉!!!四遍了,重点!否则会出现default主页被篡改为tomcat主页!!这个问题很严重,因为所有之前配置好的asp页面都打不开,相当于是将所有网页都配置成tomcat访问了,当然打不开。而且不论怎么修改iis里面的设置都无济于事,包括修改物理路径和在处理程序映射里删掉.jsp、.cfc、.cfm脚本映射。这里很是心急火燎!

解决方案:找到default默认目录下的BIN目录进去,我这里有三个文件:BonCodeAJP13.dll、BonCodeIIS.dll、iisRemoveHandlers.txt。接着打开iisRemoveHandlers.txt,如下:%windir%\system32\inetsrv\appcmd set config "default" /section:handlers /-[name='BonCode-Tomcat-CFM-Handler',path='*.cfm',verb='*',type='BonCodeIIS.BonCodeCallHandler',preCondition='integratedMode']
%windir%\system32\inetsrv\appcmd set config "default" /section:handlers /-[name='BonCode-Tomcat-CFC-Handler',path='*.cfc',verb='*',type='BonCodeIIS.BonCodeCallHandler',preCondition='integratedMode']
%windir%\system32\inetsrv\appcmd set config "default" /section:defaultDocument /-files.[value='index.cfm']
%windir%\system32\inetsrv\appcmd set config "default" /section:handlers /-[name='BonCode-Tomcat-JSP-Handler',path='*.jsp',verb='*',type='BonCodeIIS.BonCodeCallHandler',preCondition='integratedMode']
%windir%\system32\inetsrv\appcmd set config "default" /section:defaultDocument /-files.[value='index.jsp']
%windir%\system32\inetsrv\appcmd set config "default" /section:handlers /-[name='BonCode-Tomcat-WC-Handler',path='*',verb='*',type='BonCodeIIS.BonCodeCallHandler',preCondition='integratedMode']

在cmd中(可能需要管理员命令,我的cmd默认是管理员),依次输入%到]的部分,有点长,直接复制粘贴即可,Done!看看是不是可以访问default的网站了!!!

戏剧性的是,刚刚无意的配置,可以访问我自己的jsp网站,可是原来的网站不能访问,这当然还是没有成功!继续努力中。。。


【结论】:网上那个很简单的整合程序可能只能配置网站下面的目录,也就是与default同级目录,这一级目录如果有域名,也许是可以访问的,但我测试tomcatsite中貌似不能用,只有default可以用(tomcat没有外网可以访问的域名)。或许是这种方法把tomcat完全映射到iis上,导致asp不能访问。虽然jsp可以访问。。。

再尝试其他方法。。。。。若有更好的方法请告知,晚生不胜感激!!!


2016.12.29-9:10

一直在想那个很神奇的安装文件,既然这么简单,而且有人试过,我想肯定在某方面可以用!早上一大早就起来捣鼓,又重新安装了一遍connectorsetup.exe,勾选tomcatesite,其他的基本不用配置。然后打开网站,我的connector设置的目录是tomcat/webapps,打开localhost是apache主页,我网站的文件夹JSP放在webapps里,要想打开我的网站,必须得打开localhost/JSP/WebRoot,这里必须注意大小写,打开后出现503(在唯一秘钥属性“name”设置为“BonCode-Tomcat-WC-Handler”时,无法添加类型为"add”的重复集合项)错误,按网上的说法,删掉,项目JSP/WebRoot下的web.config配置文件,重新打开网站,成功!!!也就是说本地打开成功(只有一个域名被default占用,所以这个无法发布到外网),但是也不能高兴得太早,我想试试这个文件夹下的asp网站能否打开,于是拷贝一个asp文件到WebRoot下,重新打开asp网站,可以动态部分显示不了。

问题1:由于只有一个域名以用在使用asp的default目录下,不能再分配给tomcatsite,这样只能本地访问!

问题2:tomcatsite目录下并不能访问asp的动态部分,整合失败!必须要能同时访问asp和jsp网站!



2016.12.29-14.58

这个网站http://tomcat.apache.org/connectors-doc/webserver_howto/iis.html中IIS7notes这一栏貌似说有个bug45769,说是由于微软系统的原因不能正确的映射isapi_redirect.dll,下载了相关的修补程序重新配置,依然没有成功。。。


2016.12.29-20.33

上面说的那个bug应该只是los日志的bug,对于配置与使用来说应该没多大影响。我觉得到此已经配置好了,就是用那个很神奇的软件配置tomcatsite的那个教程。这里既可以访问asp,也可以访问jsp,只不过需要两个域名,一个对应asp,另外一个对应jsp。虽然之前说只能本地访问,只是因为本机只有一个可用域名分配给default了,而且若将这个域名分配给tomcatsite,则jsp网站也可以外网访问,因此我认为若有另外一个域名可以分配给tomcatsite,则外网也能访问jsp页面。那么以后发布asp只能在default目录下,发布jsp只能在tomcatsite目录下(不新建域名的情况下)。这是我的结论,但不一定最靠谱,可能有更好的解决方案。。。等待高人解答。。。