Server 2008 IIS 7.5 상자에 웹 응용 프로그램이 배포되어 있습니다.
원격에서 다음 오류가 발생 401 - Unauthorized: Access is denied due to invalid credentials
합니다.. (원격 = 동일한 LAN의 데스크탑)
서로 다른 브라우저를 사용하여 여러 원격 클라이언트를 시도했지만 모두 동일한 결과입니다. (IE, FF 및 Chrome)
서버 자체 의 데스크톱 에서 응용 프로그램을 실행하면 완벽하게 작동합니다 . 그러나 서버 데스크톱에서 Firebug를 시도하지 않았습니다. 여전히 401 상태 코드를 발행하고 있지만 어쨌든 내용을 반환한다고 가정합니다. 업데이트 # 2를 참조하십시오.
응용 프로그램이 익명 인증을 사용하고 있습니다.
응용 프로그램은 MVC 프레임 워크를 사용하여 .NET 4.0 Asp.Net으로 작성되었습니다.
정적 컨텐츠는 잘 작동합니다 (예 : http://server.com/content/image.jpg).
Sysinternals procmon
는 각 요청에 대해 FAST IO DISALLOWED 및 PATH NOT FOUND라는 두 가지 결과를 반환합니다.
동일한 서버에서 2 개의 다른 MVC 앱이 제대로 실행 중입니다. 폴더의 보안을 확인했으며 모두 일치합니다.
응용 프로그램은 Server 2008 IIS 7.0 상자에서 제대로 실행됩니다.
이와 관련된 서버의 이벤트 로그에 아무것도 나타나지 않습니다.
문제 해결 요령을 여기로 내 머리를 잡아 당겨?
업데이트 # 1 : 발굴 할 때 WTF가 더 커집니다.
IIS 관리자에서 응용 프로그램-> 오류 페이지-> 기능 설정 편집을 선택 Detailed Errors
하면 앱이 원격으로 작동합니다. 이 상태를 유지하지 않으면 문제가 아직 해결되지 않아 혼란 스럽습니다.
업데이트 # 2 : Firebug를 사용하면 Status가 여전히 401 Unauthorized
이지만 응답이 응용 프로그램의 올바른 HTML을 반환합니다.
업데이트 # 3 실패한 요청 추적으로 재생하는 경우 다음은 401을 발생시키는 경고 요청 추적입니다.
ModuleName ManagedPipelineHandler
Notification 128
HttpStatus 401
HttpReason Unauthorized
HttpSubStatus 0
ErrorCode 0
ConfigExceptionInfo
Notification EXECUTE_REQUEST_HANDLER
ErrorCode The operation completed successfully. (0x0)
업데이트 # 4 일반 IIS 로그에 다음이 표시됩니다.
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2010-07-20 19:17:22
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2010-07-20 19:17:22 10.10.1.10 GET /Purchasing/Home - 80 - 10.10.1.12 Mozilla/5.0+(Windows;+U;+Windows+NT+6.1;+en-US;+rv:1.9.2.6)+Gecko/20100625+Firefox/3.6.6 401 0 0 4414
Html.RenderAction
후 Razor가 사용한다는 사실을 깨달아 Html.Action
초기 검색이 비었습니다.