使用.NET Framework 4.6(MVC4 / 5)开发应用程序时,我曾经在web.config文件中添加自定义的mime类型,如下所示(这是我需要在我的应用程序中添加的实际mime类型):
<system.webServer>
<staticContent>
<mimeMap fileExtension=".wasm" mimeType="application/wasm"/>
<mimeMap fileExtension="xap" mimeType="application/x-silverlight-app"/>
<mimeMap fileExtension="xaml" mimeType="application/xaml+xml"/>
<mimeMap fileExtension="xbap" mimeType="application/x-ms-xbap"/>
</staticContent>
如何在.NET Core中复制此行为?可以用相同的方式做吗?
1 个答案:
答案 0 :(得分:8)
此配置用于Web服务器,而不用于ASP.NET。 web.config中的system.webServer部分处理IIS的配置。
如果您的ASP.NET Core应用程序在IIS后面运行,并且IIS正在处理静态内容,那么您应该继续使用同一内容。
如果使用的是nginx,则可以将mime类型添加到配置中或编辑mime.types文件。如果使用其他Web服务器,请查阅Web服务器的文档。
如果ASP.NET Core本身正在处理静态内容并在边缘运行,或者如果您需要ASP.NET Core知道mime类型,则需要配置ASP.NET Core的处理程序来了解它。文档中对此进行了说明。
文档中的示例:
公共无效配置(IApplicationBuilder应用)
{
var provider = new FileExtensionContentTypeProvider();
//添加新的映射
provider.Mappings [“。myapp”] =“ application / x-msdownload”;
app.UseStaticFiles(new StaticFileOptions
{
FileProvider =新的PhysicalFileProvider(
Path.Combine(Directory.GetCurrentDirectory(),“ wwwroot”,“ images”)),
RequestPath =“ / StaticContentDir”,
ContentTypeProvider =提供程序
});