WebResource.axd在ASP.Net中给出403错误使用IIS7的Post backs


0

我在Windows 2008服务器上安装了ASP.Net网站,默认情况下使用IIS7。该网站似乎工作正常,但在我的表格上的帖子不起作用。经过几个小时的调试,我意识到当我手动尝试在浏览器中点击WebResource.axd文件(例如,在地址栏中输入http://www.domain.com/WebResource.axd)时,我得到一个HTTP 403错误(拒绝访问)。

我不太确定接下来要看什么,我的Windows 2008安全知识是有限的。我该如何去访问该文件?

  0

在我的情况下,问题似乎是asp.net工作人员帐户缺少此操作需要的任何权限。当我将组件从垃圾箱移到GAC时,它开始工作。 03 10月. 132013-10-03 17:58:45

0

检查你的IIS日志 - 他们应该给出一个状态代码,其中包含有关错误的更多详细信息。此外,回发中的错误的性质是什么?


0

这是做回发时,我发现了错误:

WebForm_PostBackOptions是不确定的。

据我所知,该功能包含在WebResource.axd的文件,这使我尝试在地址栏中,这我怎么知道的403错误内...


0

不知道在那一个,但它可能与IIS中的http压缩有关。还要检查该文件是否可供IIS用户访问。


2

导航到您的iis配置文件夹。通常:c:\ windows \ system32 \ inetsrv \ config 并打开applicationHost.config文件。然后,文件内浏览到<handlers>部分,并检查以下行存在:

<add name="AssemblyResourceLoader-Integrated" path="WebResource.axd" verb="GET,DEBUG" type="System.Web.Handlers.AssemblyResourceLoader" preCondition="integratedMode" /> 

也就是说,如果你在集成模式下运行。检查是否指定了动词GET。

如果您在经典管道模式下运行,这行应该存在

<add name="AXD-ISAPI-2.0" path="*.axd" verb="GET,HEAD,POST,DEBUG" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness32" responseBufferLimit="0" /> 

如果一切似乎是确定不是看在处理程序和模块部分你的web.config,看看是否已经添加<clear />在每个的顶部。如果你这样做了,那么你在你的web.config文件中包含添加部分,该部分尊重applicationHosting.config文件中指定的处理程序/模块的顺序。