При использовании OWIN в интегрированном конвейере IIS я хочу добавить UseStaticFiles
к моему компоненту. В классе запуска моего приложения, я настроил это так:OWIN StaticFiles not found дает статус 500
var filesystem = new PhysicalFileSystem("./Scripts");
app.UseStaticFiles(new StaticFileOptions { RequestPath = new PathString("/files"), FileSystem = filesystem });
Чтобы получить эту работу, мне нужно убедить IIS, чтобы обработать запрос на /files/myfile.js
в ASP.NET, так что мой Owin компонент может справиться с этим ,
Метод RAMMFAR как-то не работает для меня, но я обнаружил, что
<add name="MyStaticFiles-Handler" path="/files/*" verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
будет делать трюк. Однако, когда я запрашиваю /files/does-not-exist.js
, я получаю статус 500 вместо 404.
Я понятия не имею, является ли мой метод TransferRequestHandler правильным методом и ожидается ли это 500. Как я могу убедиться, что несуществующие файлы в /files/*
будут обслуживаться как 404 вместо 500?
Я имел 'app.UseStageMarker (PipelineStage. MapHandler); 'before UseStaticFiles ... Теперь я лучше понимаю UseStageMarker! – Jaap