asp.net - POST 403 禁止 ScriptResource.axd

标签 asp.net iis-7.5

我们的一个网站的开发版本遇到了一个奇怪的问题。通过 DropDownList 在页面上触发回发时OnChange事件,浏览器控制台显示如下错误:

POST <URL here> 403 (Forbidden)
Uncaught #<Error>

查看生成的 IIS 错误页面没有帮助。它表示以下内容:

Module  ManagedPipelineHandler
Notification    ExecuteRequestHandler
Handler PageHandlerFactory-Integrated-4.0
Error Code  0x00000000

这是一个 ScriptResource.axd .现在这是奇怪的部分:这个问题直到我们的其他开发人员开始发布该站点才开始发生。以前,我发布它没有任何问题。没有web.config更改(事实上,它与我们的产品相同 web.config ,完美运行)。我在网上搜索了关于我们为什么会遇到这个问题的线索,它似乎主要与 <handlers> 相关。 <system.webServer> 中的部分,或 <httpHandlers><system.web> .相关部分如下:

<httpHandlers>
  <remove verb="*" path="*.asmx" />
  <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false" />
</httpHandlers>

<handlers>
  <remove name="WebServiceHandlerFactory-Integrated" />
  <remove name="ScriptHandlerFactory" />
  <remove name="ScriptHandlerFactoryAppServices" />
  <remove name="ScriptResource" />
  <add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</handlers>

据我所见,这似乎与其他用户所说的对他们有效的内容相符。一件有趣的事情是 403 Forbidden 似乎在 POST 上。 .我确实尝试添加 POST作为 ScriptResource.axd 这两个位置的动词, 但这也不起作用。

该网站托管在 IIS 7.5 中,位于使用网络服务的应用程序池下。网络服务在网站的根文件夹下具有完全控制权。

在这一点上,我完全不知道是什么导致了我们的奇怪问题。

最佳答案

我的主机使用 Plesk,他们升级服务器后我也遇到了这个问题。

将 Web 应用程序防火墙模式更改为关闭/仅检测后,此问题已修复。

enter image description here

关于asp.net - POST 403 禁止 ScriptResource.axd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35458528/

相关文章:

IIS7.5 : Is there a way to use Require SSL and URL Rewrite Module together for https?

asp.net-mvc-4 - IIS 7.5 上的 ASP.NET MVC 4 返回 404。与无扩展路由映射有关

C# ASP.NET DataGrid 复选框

c# - 我可以在 MSChart 的饼图标签上同时显示标签和值吗

c# - 在 asp.net c# 中对数据集进行排序

asp.net-mvc - 如何使自定义错误页面出现在生产服务器上

c# - 与 <li> 一起使用的 FindControl() 等效项

c# - Linq SELECT 与 ExecuteQuery

node.js - IISnode - 使 Node 进程始终工作

c# - Telerik_Web_UI_WebResource_axd 问题