[英]ASP.NET 4.6 WEB API, Not serving static files(.js, .css) IIS express visual studio
我一直在網上瀏覽,但仍然沒有運氣,因此,我為什么要問。 我有一個WEB API 4.6項目,該項目也將是angularjs2應用程序的宿主,我已設置為使用靜態文件,如下所示:
var physicalFileSystem = new PhysicalFileSystem(@".\wwwroot\");
var options = new FileServerOptions
{
EnableDefaultFiles = true,
FileSystem = physicalFileSystem,
};
var contentTypes = new FileExtensionContentTypeProvider();
options.StaticFileOptions.FileSystem = physicalFileSystem;
options.StaticFileOptions.ServeUnknownFileTypes = true;
options.StaticFileOptions.ContentTypeProvider = contentTypes;
options.DefaultFilesOptions.DefaultFileNames = new[] { "index.html" };
options.EnableDirectoryBrowsing = true;
app.UseFileServer(options);
當index.html嘗試獲取所有文件(.css.js)時,會在控制台中顯示404錯誤,從而提供了index.html。 我啟用了目錄瀏覽,並且看到文件在那里。
我發現我的代碼運行良好,我只需要將以下代碼添加到我的web.config文件中。
<system.webServer>
<handlers>
<remove name="StaticFile"/>
<add name="Owin" verb="" path="*" type="Microsoft.Owin.Host.SystemWeb.OwinHttpHandler, Microsoft.Owin.Host.SystemWeb"/>
</handlers>
在這里找到了答案。 我相信可以將其標記為重復或刪除。
除了使用OWIN,您還可以使用在此處找到的web.config設置(URL重寫)來實現從〜/ wwwroot提供靜態文件的目標。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.