微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Telerik WebResource.axd http 处理程序在 web.config 中更新并中断站点

如何解决Telerik WebResource.axd http 处理程序在 web.config 中更新并中断站点

我有一个 Web 表单应用程序,其中引用了 Telerik UI for ASP.NET AJAX - 2014.3.1024.40。此应用程序托管在 Azure 中。

在 http 处理程序部分的 web.config 中,我有这个:

<httpHandlers>
  <add path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource" verb="*" validate="false" />
  <add path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" verb="*" validate="false" />
</httpHandlers>

在 system.webServer 部分:

<system.webServer>
    <modules runAllManagedModulesForAllRequests="true">
    </modules>
    <handlers>
      <add name="Telerik.Web.UI.WebResource.axd" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource" />
      <add name="Telerik.Web.UI.DialogHandler.aspx" verb="*" preCondition="integratedMode" path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" />
    </handlers>
</system.webServer>

我上次部署该应用是在 2020 年底 - 没有问题。

然而,在 1 月下旬,一些用户开始在使用这些 Telerik 控件的页面上遇到问题。

我的部署过程是阶段 -> 验证 -> 生产。所以经过一些调试后,我比较了 stage 和 prod 中的 web.config,发现 httpHandlers 部分和 handlers 部分已经以某种方式更新了。

从那时起就没有人部署过该应用程序。事实上,唯一被编辑的文件是 web.config。所以我使用了 web.config 并用它替换了 prod web.config。就这样解决了。

直到今天,它再次发生。

所以损坏的 web.config 看起来像这样:

<httpHandlers>
  <add path="WebResaurce.axd" type="Telerik.Web.UI.WebResource" verb="*" validate="false" />
  <add path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" verb="*" validate="false" />
</httpHandlers>

注意第一个 没有指定完整路径,并且它有一个错字 - WebResaurce 而不是 WebResource。

处理程序也有类似的问题:

<add name="WebResaurce.axd" verb="*" preCondition="integratedMode" path="WebResaurce.axd" type="Telerik.Web.UI.WebResource" />

舞台 web.config 尚未编辑,应用程序按预期工作。

我已经打开了 Microsoft Azure 的支持票,试图找出更新这些的原因,但有没有遇到过这种情况的有经验的 Telerik 用户

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。