IT story

Elmah MVC를 사용하여 프로덕션 서버에서 / elmah에 액세스 할 수 없습니까?

hot-time 2021. 1. 6. 20:22
반응형

Elmah MVC를 사용하여 프로덕션 서버에서 / elmah에 액세스 할 수 없습니까?


elmah.mvc nuget 패키지를 설치하고 이메일을 보내고 SQL 데이터베이스에 연결하지 않도록 기본 구성을 유지했습니다.

내 로컬 컴퓨터에서 Visual Studio 호스트를 사용할 때 내 앱을 열고 / elmah fine에 액세스하여 오류 보고서를 볼 수 있습니다. 그러나 프로덕션에서 / elmah에 액세스하려고하면 두 가지 오류가 발생하고 먼저 403 access is denied서버 오류가 발생합니다. 그런 다음 내 이메일 (elmah에서)에서 다음을 얻습니다.

System.Web.HttpException: Server cannot set status after HTTP headers have been sent.

누구든지 여기서 무슨 일이 일어나고 있고 어떻게 고칠 지 알고 있습니까? 감사.

아래 답변에서 제안한대로 다음을 시도했습니다.

<system.webServer>

<handlers>
  <add name="elmah" verb="GET" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah"/>
</handlers>

그리고 <system.web>

<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>

나는 경로를 둘 다 elmah.axd그리고 단순히 ~/elmah. 모두 여전히 동일한 오류를 제공하고 로컬에서 작동하지만 프로덕션에서는 작동하지 않습니다.

편집 : 실제로 서버에 원격으로 접속하고 거기에있는 브라우저를 통해 액세스 할 때도 작동합니다 (로컬 호스트를 사용하지 않고 실제 사이트 주소). 그래서 내가 가지고 있지 않은 허가는 무엇입니까? 서버 수준에있는 것 같습니다.


<elmah>web.config 파일 섹션에 다음 구성 설정을 추가하여 원격 액세스를 위해 Elmah를 활성화해야 합니다. 이 값의 기본 설정은 false이며 localhost 만 허용하므로 Visual Studio 내에서 로컬 컴퓨터에서 작동합니다.

   <elmah>
      <security allowRemoteAccess="true"/>
   </elmah>

나는 항상 이것을 스스로 잊고 몇 분 동안 머리를 긁는 것 같습니다.)


HttpHandler가 web.config 파일의 webServer 섹션에 정의되어 있는지 확인하십시오.

<system.webServer>
  <httpHandlers>
    <add name="elmah" verb="GET" path="elmah.axd"  type="Elmah.ErrorLogPageFactory, Elmah"/>
  </httpHandlers>
</system.webServer>

참조 URL : https://stackoverflow.com/questions/11674464/cant-access-elmah-on-production-server-with-elmah-mvc

반응형