我们正在尝试将我们的Web应用程序服务器从2008年的盒子迁移到2012年。作为其中的一部分,我们还将IIS主机从7升级到8.5。
当我尝试访问我们在新框中使用与当前正在运行的生产环境相同的web.config的最简单应用程序时,我收到以下错误(在主机上本地使用IE)。
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Module
WebSocketModule
Notification
BeginRequest
Handler
ExtensionlessUrlHandler-ISAPI-4.0_64bit
Error Code
0x80070490
Config Error
The configuration section 'system.webServer/webSocket' cannot be read because it is missing a section declaration
Config File
\\?\C:\XXX\XXX\XXX\web.config
Config Source:
-1:
0:
我们的网络服务器部分如下所示。
<system.webServer>
<modules>
<add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v15.1, Version=15.1.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" />
</modules>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v15.1, Version=15.1.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" verb="GET,POST" path="DX.ashx" name="ASPxHttpHandlerModule" preCondition="integratedMode" />
<add name="ASPxUploadProgressHandler" preCondition="integratedMode" verb="GET,POST" path="ASPxUploadProgressHandlerPage.ashx" type="DevExpress.Web.ASPxUploadProgressHttpHandler, DevExpress.Web.v15.1, Version=15.1.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
</handlers>
</system.webServer>
使用我的基本模式查找技巧,我尝试添加webSocket部分。
<system.webServer>
<webSocket enabled="false"/>
<modules>
<add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v15.1, Version=15.1.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" />
</modules>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<add type="DevExpress.Web.ASPxHttpHandlerModule, DevExpress.Web.v15.1, Version=15.1.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" verb="GET,POST" path="DX.ashx" name="ASPxHttpHandlerModule" preCondition="integratedMode" />
<add name="ASPxUploadProgressHandler" preCondition="integratedMode" verb="GET,POST" path="ASPxUploadProgressHandlerPage.ashx" type="DevExpress.Web.ASPxUploadProgressHttpHandler, DevExpress.Web.v15.1, Version=15.1.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
</handlers>
</system.webServer>
然后,错误消息将更改为以下内容。
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Module
IIS Web Core
Notification
BeginRequest
Handler
Not yet determined
Error Code
0x8007000d
Config Error
Config File
\\?\C:\MDM\Webs\Symcom\web.config
我在这里遗失了什么?我们工作的IIS 7部署和新的IIS 8.5部署之间的配置的唯一区别是我尝试提供配置的webSocket部分。
答案 0 :(得分:0)
事实证明,我们安装了.NET,并在注册表中安装了配置值,但不是服务器管理器的一部分。我们还必须重新启动服务器以允许它完成一些更新。
一旦我们通过服务器管理器安装它并回收应用程序池,一切都很糟糕。