[英]IIS7 fails to load aspx pages
I've been trying to migrate a fairly large web application from IIS6 to IIS7 the past few days, but every time it seems like we're about done, IIS7 fails to load aspx pages. 过去几天,我一直在尝试将相当大的Web应用程序从IIS6迁移到IIS7,但是每次似乎即将完成时,IIS7都无法加载aspx页面。
The application is a .net 3.5 webapp that makes heavy use of reflection and web services. 该应用程序是一个.net 3.5 Webapp,它大量使用了反射和Web服务。 We use 2 main components (each with their own web site in IIS7 although they share an application pool): the web UI (aspx pages), and the webAPI (asmx pages).
我们使用2个主要组件(尽管它们共享一个应用程序池,但每个组件都在IIS7中拥有自己的网站):Web UI(aspx页面)和webAPI(asmx页面)。
The webAPI portion runs perfectly (as far as we can tell; there are a few things we can't test from the browser), and the web UI pages load static HTM pages just fine. webAPI部分运行完美(据我们所知;有些事情我们无法通过浏览器进行测试),并且Web UI页面可以很好地加载静态HTM页面。 The problem is that once we attempt to view an aspx page (any aspx page), the whole thing just comes to a halt;
问题在于,一旦我们尝试查看一个aspx页面(任何aspx页面),整个过程就会停止; no error is logged in the event viewer until a few minutes later when we get an IIS 5010 warning (worker process ignoring ping).
几分钟后,当我们收到IIS 5010警告(工作进程忽略ping)时,事件查看器中才会记录错误。
We've attempted to migrate the app in two different ways: 我们尝试以两种不同的方式迁移应用程序:
Either way, what happened from the user's point of view was the same. 无论哪种方式,从用户的角度来看都是一样的。
Unfortunately, we can't even attach a debugger to the worker process because it doesn't seem to be loading managed code. 不幸的是,我们甚至无法将调试器附加到工作进程中,因为它似乎并未加载托管代码。
Details: 细节:
Notes: 笔记:
Updates: 更新:
http://support.softartisans.com/kbview.aspx?ID=1318 http://support.softartisans.com/kbview.aspx?ID=1318
Turns out it was an issue with the vendor control. 原来这是供应商控件的问题。 Wish their solution actually worked though...
希望他们的解决方案确实有效...
Try to re-register ASP.NET: 尝试重新注册ASP.NET:
http://msdn.microsoft.com/en-us/library/k6h9cz8h(VS.80).aspx
The typical command line syntax would be to command line to the ASP.NET 2.0 version of your framework and type: 典型的命令行语法是将命令行输入到框架的ASP.NET 2.0版本并键入:
aspnet_regiis -i
Are you using the "Classic" Pipeline Mode for your Application Pool. 您是否在应用程序池中使用“经典”管道模式。 The "Integrated" one is the default in IIS7 and it introduced changes in terms of configuration.
在IIS7中,“集成”是默认设置,它在配置方面进行了更改。 (One example is HttpHandlers that need a different configuration in web.config).
(一个示例是需要在web.config中进行其他配置的HttpHandlers)。
The "Classic" one mimics the IIS6 application pool, and should work with the same configuration as for IIS6. “经典”类模仿IIS6应用程序池,并且应使用与IIS6相同的配置。
If you prefer to use the Integrated Pipeline, there are some tools that will automatically try to convert you configuration files. 如果您更喜欢使用集成管道,则有些工具会自动尝试转换您的配置文件。
Scott Hanselman covers some of these tools in his blog post . Scott Hanselman在他的博客文章中介绍了其中一些工具。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.