[英]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.