Adición de asignaciones MIME de contenido estático <mimeMap>

Información general

El elemento <mimeMap> del elemento <staticContent> agrega un tipo MIME único a la colección de tipos de contenido estáticos. Cada entrada <mimeMap> debe constar de dos partes:

  • Extensión de nombre de archivo única especificada por el atributo fileExtension, por ejemplo, ".txt", ".png", etc.
  • Tipo MIME para la extensión de nombre de archivo especificada por el atributo mimeType, por ejemplo, "text/plain", "image/jpg", etc.

Nota:

IIS 7 no devolverá tipos de archivo que no se agreguen al elemento <staticContent> o que tengan asignaciones en el elemento <handlers> de forma predeterminada. Este comportamiento impide el acceso no autorizado a los archivos que no tienen asignaciones en los valores de configuración de IIS 7.

Compatibilidad

Versión Notas
IIS 10.0 El elemento <mimeMap> no se modificó en IIS 10.0.
IIS 8.5 El elemento <mimeMap> no se modificó en IIS 8.5.
IIS 8.0 El elemento <mimeMap> no se modificó en IIS 8.0.
IIS 7.5 El elemento <mimeMap> no se modificó en IIS 7.5.
IIS 7.0 El elemento <mimeMap> del elemento <staticContent> se introdujo en IIS 7.0.
IIS 6,0 El elemento <mimeMap> reemplaza la propiedad de metabase de IIS 6.0 MimeMap.

Configuración

El elemento <mimeMap> del elemento <staticContent> se incluye en la instalación predeterminada de IIS 7.

Procedimientos

Cómo agregar un tipo MIME a un sitio web o una aplicación

  1. Abra el Administrador de Internet Information Services (IIS):

    • Si usa Windows Server 2012 o Windows Server 2012 R2:

      • En la barra de tareas, haga clic en Administrador del servidor, en Herramientas y, a continuación, en Administrador de Internet Information Services (IIS).
    • Si usa Windows 8 o Windows 8.1:

      • Mantenga presionada la tecla Windows, presione la letra X y haga clic en Panel de control.
      • En Panel de control, haga clic en Herramientas administrativas y, a continuación, haga doble clic en Administrador de Internet Information Services (IIS).
    • Si usa Windows Server 2008 o Windows Server 2008 R2:

      • En la barra de tareas, haga clic en Inicio, seleccione Herramientas administrativas y, a continuación, haga clic en Administrador de Internet Information Services (IIS).
    • Si usa Windows Vista o Windows 7:

      • En la barra de tareas, haga clic en Inicio y, luego, haga clic en Panel de control.
      • Haga doble clic en Herramientas administrativas y, a continuación, haga doble clic en Administrador de Internet Information Services (IIS).
  2. En el panel Conexiones, vaya al sitio, la aplicación o el directorio en el que desea agregar un tipo MIME.

  3. En el panel Inicio, haga doble clic en tipos MIME.
    Screenshot that shows the Default Web Site Home pane. MIME Types is selected.

  4. En el panel Tipos MIME, haga clic en Agregar... en el panel Acciones.
    Screenshot that shows the MIME Types pane.

  5. En el cuadro de diálogo Agregar tipo MIME, agregue la extensión de nombre de archivo y el tipo MIME y, a continuación, haga clic en Aceptar.
    Screenshot that shows the Add MIME Type dialog box. Tab is entered in the File name extension box. Text slash plain is entered in the MIME type text box.

Configuración

Atributos

Atributo Descripción
fileExtension Atributo de cadena necesario.

Especifica una extensión de nombre de archivo única para un tipo MIME.

Consulte la sección Configuración predeterminada más adelante en este tema para obtener la lista completa de valores predeterminados
mimeType Atributo de cadena necesario.

Especifica el tipo de archivo y la aplicación que usa este tipo de extensión de nombre de archivo.

Consulte la sección Configuración predeterminada más adelante en este tema para obtener la lista completa de valores predeterminados.

Elementos secundarios

Ninguno.

Ejemplo de configuración

En el siguiente ejemplo de configuración se agregan los tipos de archivo para los archivos Mensajes exclusivos del sistema MIDI (Sysex) y Tablatura de guitarra (TAB) a IIS, lo que permite a los clientes descargar estos tipos de archivo.

<configuration>
   <system.webServer>
      <staticContent>
         <mimeMap fileExtension=".syx" mimeType="application/octet-stream" />
         <mimeMap fileExtension=".tab" mimeType="text/plain" />
      </staticContent>
   </system.webServer>
</configuration>

Código de ejemplo

En los siguientes ejemplos de código se agregan los tipos de archivo para los archivos Mensajes exclusivos del sistema MIDI (Sysex) y Tablatura de guitarra (TAB) a IIS, lo que permite a los clientes descargar estos tipos de archivo.

AppCmd.exe

appcmd.exe set config "Default Web Site" -section:system.webServer/staticContent /+"[fileExtension='syx',mimeType='application/octet-stream']"

appcmd.exe set config "Default Web Site" -section:system.webServer/staticContent /+"[fileExtension='tab',mimeType='text/plain']"

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetWebConfiguration("Default Web Site");
         ConfigurationSection staticContentSection = config.GetSection("system.webServer/staticContent");
         ConfigurationElementCollection staticContentCollection = staticContentSection.GetCollection();

         ConfigurationElement mimeMapElement = staticContentCollection.CreateElement("mimeMap");
         mimeMapElement["fileExtension"] = @"syx";
         mimeMapElement["mimeType"] = @"application/octet-stream";
         staticContentCollection.Add(mimeMapElement);

         ConfigurationElement mimeMapElement1 = staticContentCollection.CreateElement("mimeMap");
         mimeMapElement1["fileExtension"] = @"tab";
         mimeMapElement1["mimeType"] = @"text/plain";
         staticContentCollection.Add(mimeMapElement1);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetWebConfiguration("Default Web Site")
      Dim staticContentSection As ConfigurationSection = config.GetSection("system.webServer/staticContent")
      Dim staticContentCollection As ConfigurationElementCollection = staticContentSection.GetCollection

      Dim mimeMapElement As ConfigurationElement = staticContentCollection.CreateElement("mimeMap")
      mimeMapElement("fileExtension") = "syx"
      mimeMapElement("mimeType") = "application/octet-stream"
      staticContentCollection.Add(mimeMapElement)

      Dim mimeMapElement1 As ConfigurationElement = staticContentCollection.CreateElement("mimeMap")
      mimeMapElement1("fileExtension") = "tab"
      mimeMapElement1("mimeType") = "text/plain"
      staticContentCollection.Add(mimeMapElement1)

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site";
var staticContentSection = adminManager.GetAdminSection("system.webServer/staticContent", "MACHINE/WEBROOT/APPHOST/Default Web Site");
var staticContentCollection = staticContentSection.Collection;

var mimeMapElement = staticContentCollection.CreateNewElement("mimeMap");
mimeMapElement.Properties.Item("fileExtension").Value = "syx";
mimeMapElement.Properties.Item("mimeType").Value = "application/octet-stream";
staticContentCollection.AddElement(mimeMapElement);

var mimeMapElement1 = staticContentCollection.CreateNewElement("mimeMap");
mimeMapElement1.Properties.Item("fileExtension").Value = "tab";
mimeMapElement1.Properties.Item("mimeType").Value = "text/plain";
staticContentCollection.AddElement(mimeMapElement1);

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site"
Set staticContentSection = adminManager.GetAdminSection("system.webServer/staticContent", "MACHINE/WEBROOT/APPHOST/Default Web Site")
Set staticContentCollection = staticContentSection.Collection

Set mimeMapElement = staticContentCollection.CreateNewElement("mimeMap")
mimeMapElement.Properties.Item("fileExtension").Value = "syx"
mimeMapElement.Properties.Item("mimeType").Value = "application/octet-stream"
staticContentCollection.AddElement(mimeMapElement)

Set mimeMapElement1 = staticContentCollection.CreateNewElement("mimeMap")
mimeMapElement1.Properties.Item("fileExtension").Value = "tab"
mimeMapElement1.Properties.Item("mimeType").Value = "text/plain"
staticContentCollection.AddElement(mimeMapElement1)

adminManager.CommitChanges()