2016-10-10 3 views
2

저는 ASP.NET 웹 응용 프로그램 (Sitecore)을 가지고 있으며 ASP.NET을 통해 .html로 끝나는 경로를 처리해야합니다. 일반적으로, 내가 읽은 것처럼 단순히 012.을 /Configuration/system.WebServer/modules에 web.config로 추가하면 충분합니다.ASP.NET 파이프 라인을 통해 정적 파일을 전달할 수 없습니다.

그러나이 동작이 표시되지 않습니다.

"test.html"을 쓰려고하면 나에게 기본 IIS 404 페이지가 표시되고 실행되는 코드는 그렇지 않습니다.

앱 풀은 이미 통합 모드이고 validateIntegratedModeConfiguration 속성은 이미 true으로 설정되어 있습니다. 여기에 무엇이 누락 되었습니까?

+0

라우팅을 어떻게 처리합니까? Sitecore 파이프 라인에 패치를 적용하고 있습니까? 몇 가지 샘플 코드를 게시 할 수 있습니까? 'html'이 [config에서 허용되는 확장자]가 아니기 때문일 수 있습니다 (http://stackoverflow.com/a/39471240/661447). – jammykam

+1

"Allowed extensions in config"는 showconfig.aspx의 출력에서 ​​검색을하고 거기에서 PreProcessRequest 파이프 라인에 관련 프로세서를 찾았습니다. 허용 된 목록에 html을 추가했는데 성공했습니다. 당신이 대답으로 당신의 코멘트를 돌리면, 나는 그것을 받아 들일 것이다 :) – Yiangos

답변

2

경로가 Sitecore 파이프 라인을 사용하여 등록 된 경우 Allowed extensions 목록에 html을 포함해야합니다. 다음과 같은 설정을 처리하여 처리해야하는 확장명을 포함 시키십시오.

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/"> 
    <sitecore> 
     <preprocessRequest> 
     <processor type="Sitecore.Pipelines.PreprocessRequest.FilterUrlExtensions, Sitecore.Kernel"> 
      <param desc="Allowed extensions (comma separated)">aspx, ashx, asmx, html</param> 
     </processor> 
     </preprocessRequest>  
    </pipelines>  
    </sitecore> 
</configuration>