2012-02-23 1 views
1

내 web.config는 다음과 같이 설정됩니다. 내 처리기는 TestProject.Custom이라는 어셈블리에 있습니다. 이 핸들러를 jQuery 포스트를 통해 호출하고 있는데 VS 2010에서 훌륭하게 작동합니다.하지만 IIS 7.5 또는 IIS 7로 푸시하면 TestHandler.ashx를 찾을 수 없다는 404가 발생합니다. 내가 무엇을 놓치고 있는지 잘 모르겠다.IIS 7, 7.5의 ASP.NET 사용자 지정 HttpHandler

<system.webServer> 
<validation validateIntegratedModeConfiguration="false" /> 

<handlers> 
    <add name="TestHandler" 
     verb="*" preCondition="integratedMode" 
     path="TestProject.Custom.HttpHandlers.TestHandler.ashx" 
     type="TestProject.Custom.HttpHandlers.TestHandler, TestProject.Custom"/> 

</handlers> 

편집 :

jQuery(function() { 
    jQuery.ajax({ 
     type: "POST", 
     url: "TestHandler.ashx", 
     data: { "test_data": "some test data" } 
    }); 
}); 
+0

어떻게 처리기를 호출합니까? –

답변

1

"path"속성은 현재 값 대신 "TestHandler.ashx"여야한다고 생각합니다. jQuery에서 사용하는 URL과 일치해야합니다. 그렇지 않으면 404가 예상됩니다.

+0

이것은 그 것이다. 작동하지 않는 다른 문제가있었습니다. – codelove

0

(404)는 일반적 의미 : 나는 jQuery로이 핸들러를 호출하고 있고 핸들러가 뒤에있다 (나는 문제는 생각하지 않는다) 인증을 형성한다 등록 문제는 기본적으로 들어오는 요청을 처리 할 무언가를 찾지 못했습니다.

끝에 노드 추가시 다음 속성을 추가하십시오. resour ceType = "지정되지 않음"

IIS가 ashx에 대한 요청을 볼 때 실제 파일을 찾지 않도록 지시합니다. 내 생각에 그 원인이 404

+0

지정되지 않은 값이 기본값이므로 안전하게이 속성을 생략 할 수 있습니다. http://www.iis.net/ConfigReference/system.webServer/handlers/add –

+0

@Lex Li : 좋은 호출 ... 적어도 문제는 맞았습니다. :-) – swannee