我在 Win2008 Server R2 上的 IIS 7.5 中设置了一个默认网站。
默认网站下有多个 ASP.NET 2.0 应用程序。目前,我正尝试将新的预编译 ASP.Net 4.0 应用程序部署到默认网站,但 Web 服务器返回错误,HTTP 500.19
描述 Web.config 中定义的重复“system.web.extensions/scripting/scriptResourceHandler”部分。但是,错误引用的 Web.config 文件路径与我尝试打开的默认网站下的应用程序不同。
例如,我输入的是新 ASP.NET 4.0 应用程序的 URL,但它给出的 Web.config 错误是针对 2.0 应用程序之一的。虚拟路径是正确的,每个应用程序都有自己的应用程序池。
有什么想法可能导致此问题吗?
答案1
您的默认网站的根也是一个应用程序 - 您可能会发现它正在使用 DefaultAppPool 并且配置为使用 .Net 2.0。配置可以从这里继承。
您可以尝试以下其中一种:
- 如果网站根目录下没有配置应用程序,您可以尝试将 DefaultAppPool 设置更改为“无托管代码”
- 使用以下方法关闭根应用程序的继承inheritInChildApplications="false"
<remove... >
在添加冲突模块之前,为每个冲突模块添加一个标签<add...>
请记住,如果您的子应用程序依赖任何继承的设置,则 1 和 2 可能会影响它们。