2013-10-03 3 views
1

ServiceStack의 AppHostHttpListenerBase (예 : 자체 호스팅)로 구축중인 웹 콘솔이 있습니다.자체 호스팅 ServiceStack의 무제한 및 다른 파일 형식을 어떻게 제공합니까?

덜 스타일 시트를 사용할 수 있도록 less.js를 사용하고 싶지만 ServiceStack은 .js, .css, .html 등이 아닌 파일에 대한 요청이있을 때 항상 '금지됨'을 반환합니다.

app.config의 httpmodule을 사용하여 "* .less"경로를 처리하려고 시도했지만 ServiceStack 자체 호스팅이 config 파일을 완전히 해석하는지 확신하지 못합니다.

임의의 파일 유형의 정적 컨텐츠를 제공하도록 ServiceStack을 구성하는 방법이 있습니까?

+0

귀하의 질문에서 아무 것도 이해할 수 없습니다. html 페이지를 의미하는 경우이 질문과 답변은 도움이됩니다. [ServiceStack을 사용하여 HTML 페이지를 제공 할 수 있습니까?] (http://stackoverflow.com/questions/8199493/is-it-possible-to-serve-html-pages) -with-servicestack) – stefan2410

+1

사과하지 않을 경우 명확하지 않습니다. 이 질문은 "자체 호스팅 ServiceStack의 무의미한 파일을 어떻게 제공합니까?"라고 컴파일됩니다. – Robin

+0

당신이 쓴 것처럼 당신의 질문 제목을 바꾸십시오, 그래서 당신의 질문은 다른 사람들에게 유용 할 것입니다. 다행히 해결할 수 있습니다. – stefan2410

답변

4

해결했습니다. 삶의 팁 : SO 커뮤니티를 혼란스럽게하기 전에 IntelliSense로 탐험 해보십시오!

public override void Configure(Funq.Container container) 
{ 
    ServiceStack.Logging.LogManager.LogFactory = new ServiceStack.Logging.Support.Logging.ConsoleLogFactory(); 

    Plugins.Add(new ServiceStack.Razor.RazorFormat()); 

    var config = new EndpointHostConfig 
    { 
     CustomHttpHandlers = { 
      { System.Net.HttpStatusCode.NotFound, new ServiceStack.Razor.RazorHandler("/notfound") } 
     }, 
     EnableFeatures = Feature.All^Feature.Metadata 
    }; 
    config.AllowFileExtensions.Add("less"); 
    SetConfig(config); 
} 

AllowFileExtensions 속성은 내가 원했던 것입니다. 파일 경로에서 브라우저를 가리키면 파일을 다운로드합니다 (브라우저에서 볼 것이지만, CSS 및 js 파일은 응답 헤더에서 제어되는 것으로 추측되지만, 완벽하게 작동하도록 수정해야합니다). in 'link href = "blah.less"')

관련 문제