1

我有一个使用 ServiceStack 的 AppHostHttpListenerBase(即自托管)构建的 Web 控制台。

我想使用less.js,所以我可以使用.less 样式表,但是当对任何不是.js、.css、.html 等的文件发出请求时,ServiceStack 总是返回“Forbidden”。

我尝试在 app.config 中使用 httpmodule 来处理路径“* .less”,但我不确定 ServiceStack 自托管是否完全解释了配置文件。

有没有办法配置 ServiceStack 来提供任意文件类型的静态内容?

4

1 回答 1

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);
}
于 2013-10-03T12:24:39.687 回答