asp.net – ASMX服务在开发服务器上工作,部署到IIS 7.5时返回404

我在ASP.NET 4.0中有一个Web应用程序。我添加一个asmx服务,主要作为自动完成扩展器的查找值的源。

当我在本地机器上调试时,一切都正常。但是,当我将Web应用程序部署到IIS 7.5时,当尝试向服务发送数据时,我收到HTTP 404响应。

我可以浏览到服务定义,看可用的操作。但是,当我使用测试页面使用POST测试服务时,我再次收到一个HTTP 404。

我不知道发生了什么。我在我的Web应用程序中创建了asmx文件,并且部署在我的另外工作的生产应用程序的虚拟目录中。

也可能是.asmx文件被部署在同一个虚拟目录中的问题?

解决方法

我遇到了同样的错误,绊倒了这个SO条目:

Handlers returns 404 error on IIS7.5 integrated pipeline

ASMX operation 404s,but ASMX service description doesn’t,url routing issue?

并尝试将asmx处理程序添加到web.configs webServer部分的解决方案都很好:


  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true"/>
    <handlers>
      <add verb="*" path="*.asmx" name="asmx" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
    </handlers>
  </system.webServer>


相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...