IIS8 / Window Server 2012上的IIRF抛出w3wp.exe异常

时间:2015-04-16 12:20:45

标签: iis iis-8 isapi iirf

有没有人幸运获得IIRF与IIS8合作?

我正在将现有的PHP Web应用程序从IIS 7.5 / Windows Server 2008 R2服务器迁移到新的IIS8 / 2012服务器上。我下载并测试了所有IIRF 2.x版本无济于事。我运行了Debug Diagnostics但没有获得有关失败的w3wp.exe进程的详细信息。 IIRF日志显示以下例外情况。

我没有太多的URL重写经验,并且想知道我是否应该使用Internet Server API的URL Rewrite。

错误日志摘录

  

Wed Apr 15 16:11:59 - 3348 - GetServerVariable:获取'SERVER_PORT'

     

Wed Apr 15 16:11:59 - 3348 - GetServerVariable:4 bytes

     

Wed Apr 15 16:11:59 - 3348 - GetServerVariable:result'443'

     

Wed Apr 15 16:11:59 - 3348 - GetServerVariable:获取'HTTPS'

     

Wed Apr 15 16:11:59 - 3348 - GetServerVariable:3 bytes

     

Wed Apr 15 16:11:59 - 3348 - GetServerVariable:结果'on'

     

Wed Apr 15 16:11:59 - 3348 - EXCEPTION

     

Wed Apr 15 16:11:59 - 3348 - SymInit:Symbol-SearchPath:   “C:\的Inetpub \ ISAPI \离子   重写\ 2.1.2.0-RELEASE-64 \; C:\ Windows \ System32下\ INETSRV; C:\ Windows \ System32下\ INETSRV; C:\视窗; C:\ Windows \ System32下; SRV C:\ websymbols http://msdl.microsoft.com/download/symbols;”,   symOptions:530,UserName:'MyUserNameHere'

     

Wed Apr 15 16:11:59 - 3348 - OS-Version:6.3.9600()0x110-0x3

     

Wed Apr 15 16:11:59 - 3348 - Stack trace:

     <00> 00007FFA846DC579模块(过滤器):(文件名不可用):   RegisterModule

     <00> 00007FFA8461C579模块(IIRF):(文件名不可用):   Iirf_GetVersion

     <00> 00007FFA8461C896模块(IIRF):(文件名不可用):   HttpFilterProc

     <00> 00007FFA846D1B97模块(过滤器):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA846D1EA9模块(过滤器):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA846D1600模块(过滤器):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA86B330A5模块(iiscore):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA86B32908模块(iiscore):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA86B319A6模块(iiscore):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA86B3641C模块(iiscore):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA86B37FD3模块(iiscore):(文件名不可用):   (功能名称不可用)

     <00> 00007FFA86B111A9模块(w3dt):(文件名不可用):   UlAtqSetContextProperty

     <00> 00007FFA884F20C3模块(W3TP):(文件名不可用):   THREAD_POOL :: BindIoCompletionCallback

     <00> 00007FFA884F1FF3模块(W3TP):(文件名不可用):   THREAD_POOL :: BindIoCompletionCallback

     <00> 00007FFA884F1F7E模块(W3TP):(文件名不可用):   THREAD_POOL :: BindIoCompletionCallback

     <00> 00007FFA936516AD模块(KERNEL32):(文件名不可用):   BaseThreadInitThunk

     <00> 00007FFA938CE954模块(ntdll):(文件名不可用):   RtlUserThreadStart

     <00> 00007FFA938CE954模块(ntdll):(文件名不可用):   RtlUserThreadStart

2 个答案:

答案 0 :(得分:1)

我有完全相同的问题,刚刚从服务器2008(IIS 7.5)迁移到2012(IIS 8.5)而我常用的IIRF版本2.1.2.0-x64不起作用,但仅在重定向时,重写似乎上班。有人建议回到v2.0,但我已经完成了它根本不起作用,也许是因为它不是x64版本。我也尝试过最新的2.1.2.3-x64和相同的peoblem,没有重定向。我遇到了一个已修复它的人(https://iirf.codeplex.com/workitem/34722),但遗憾的是还没有发布新的DLL。任何人都可以尝试修复,包括重新编译,然后释放DLL?很多人都会从中受益。感谢。

- 编辑 - (更新)

我刚刚设法让IIRF在IIS8 +中工作,但只有IIRF-2.0.1.15 32bit才能工作,它涉及通常的安装,那么你必须使用IIRF进入网站应用程序池的高级设置启用32位应用程序= True,这当然是因为IIRF-2.0.1.15是32位。不是最好的,但它的工作原理。我试图找到一个固定的2.1 x64 DLL,当我这样做时,我会让它可用。感谢。

答案 1 :(得分:0)

最后,我获得了一个适用于IIS8 +的新版本修订版,我已经在我的网站(http://www.nelsonpires.com/web-development/ionics-isapi-rewrite-filter-aka-iirf-for-iis8/)上提供了该版本,供任何人下载和使用。我测试了它并确认它在IIS8.5上运行良好。希望这也适合你。