Compartir a través de


Cómo: Configurar una extensión de controlador HTTP en IIS

Actualización: noviembre 2007

De forma predeterminada, Internet Information Services (IIS) pasa las solicitudes de ciertos tipos de archivo a ASP.NET para que las atienda. Los archivos con extensiones de nombre de archivo como .aspx, .ascx, .asmx y .ashx ya están asignados a la extensión ISAPI de ASP.NET (Aspnet_isapi.dll). Esto se aplica a IIS 6.0, al modo clásico de IIS 7.0 y a los controladores administrados del modo integrado de IIS 7.0.

Para que IIS pase otras extensiones de nombre de archivo a ASP.NET, debe registrar las extensiones en IIS. Para obtener más información sobre cómo los controladores participan en el ciclo de vida de aplicación, vea Información general sobre el ciclo de vida de una aplicación ASP.NET para IIS 5.0 y 6.0 o Información general sobre el ciclo de vida de una aplicación ASP.NET para IIS 7.0.

Para asignar una extensión de nombre de archivo en IIS 6.0

  1. Abra IIS Manager.

  2. Expanda el nodo del equipo del servidor web, expanda Sitios web y, a continuación, expanda Sitio web predeterminado.

  3. Haga clic con el botón secundario en el nombre de la aplicación y, a continuación, haga clic en Propiedades.

    Nota:

    Para obtener más información sobre cómo crear una aplicación ASP.NET, vea Cómo: Crear y configurar sitios web ASP.NET locales en IIS 6.0.

  4. Haga clic en la ficha Directorio virtual y, a continuación, en Configuración.

  5. En la ficha Asignaciones, haga clic en Agregar.

    Se muestra el cuadro de diálogo Agregar o editar la asignación de extensión a aplicación.

  6. En el cuadro Ejecutable, escriba Aspnet_isapi.dll o vaya a dicho archivo. De forma predeterminada, el archivo está en la ubicación siguiente:

    %windows%\Microsoft.NET\Framework\version\
    
    Nota:

    Puede obtener la ruta de acceso completa y nombre de archivo de otras asignaciones, por ejemplo la asignación a archivos .aspx.

  7. En el cuadro Extensión, escriba la extensión de nombre de archivo, como .sample.

    Nota:

    Asegúrese de que incluye el punto (.) como parte de la extensión de nombre de archivo.

  8. Active la casilla Comprobar si el archivo existe según lo que la extensión de nombre de archivo represente en su aplicación. Elija estas opciones:

    • True. La extensión de nombre de archivo representa un archivo físico en la aplicación. En este caso, si el archivo solicitado no existe en el disco, IIS muestra un error.

    • False. La extensión de nombre de archivo no representa un archivo físico. En su lugar, una clase asignada a la extensión en ASP.NET administra dinámicamente la extensión.

  9. Haga clic en Aceptar y, a continuación, cierre IIS Manager.

Para asignar una extensión de nombre de archivo en el modo clásico de IIS 7.0

  1. Abra IIS Manager.

    Nota:

    En y Windows Server 2008, si la característica Control de cuentas de usuario (UAC) está habilitada, solicita que continúe el acceso al administrador. Para obtener más información, vea User Account Control Overview.

  2. Expanda el nodo del equipo del servidor web, expanda Sitios y, a continuación, expanda Sitio web predeterminado.

  3. Seleccione el nodo de la aplicación.

    Se muestra el panel Vista Características.

  4. En Vista Características, haga doble clic en Asignaciones de controlador.

  5. En el panel Acciones, haga clic en Agregar asignación de script.

    Aparece el cuadro de diálogo Agregar asignación de script.

  6. En el cuadro de diálogo Agregar asignación de script, especifique lo siguiente:

    • Ruta de acceso de solicitudes. El nombre o la extensión de nombre de archivo que se va a asignar.

    • Ejecutable. La ruta de acceso del archivo .exe o .dll que administrará la solicitud. En el modo clásico, especifique la extensión ISAPI de ASP.NET (Aspnet_isapi.dll).

    • Nombre Un nombre descriptivo.

  7. Haga clic en Aceptar para cerrar el cuadro de diálogo Agregar asignación de script.

    Nota:

    El uso de IIS Manager en IIS 7.0 para agregar una extensión de controlador personalizada es equivalente a registrar la extensión de controlador en el archivo Web.config de una aplicación ASP.NET. El registro agrega un elemento handler en la sección handlers del grupo system.webServer.

  8. Abra el archivo Web.config de la aplicación.

  9. Busque el elemento httpHandlers de la sección system.web y agregue una entrada para la extensión de nombre de archivo.

    Nota:

    La extensión de nombre de archivo se debe registrar en el elemento httpHandlers y el elemento handlers.

Para asignar una extensión de nombre de archivo en el modo integrado de IIS 7.0

  1. Siga los pasos del 1 al 3 del procedimiento anterior.

  2. En el panel Acciones, haga clic en Agregar controlador administrado.

    Aparece el cuadro de diálogo Agregar controlador administrado.

  3. En el cuadro de diálogo Agregar controlador administrado, especifique lo siguiente:

    • Ruta de acceso de solicitudes. El nombre de archivo o la extensión de nombre de archivo que se va a asignar.

    • Tipo. El nombre de tipo (clase) del controlador administrado. Si el controlador se define en la carpeta App_Code de la aplicación ASP.NET, su nombre de tipo aparecerá en la lista desplegable.

    • Nombre Un nombre descriptivo.

  4. Haga clic en Aceptar para cerrar el cuadro de diálogo Agregar controlador administrado.

    Nota:

    El uso de IIS Manager en IIS 7.0 para agregar una extensión de controlador personalizada es equivalente a registrar la extensión de controlador en el archivo Web.config.

    Nota:

    Para un controlador que presta servicio a una extensión personalizada en el modo integrado de IIS 7.0, sólo se necesita un registro en el elemento handlers. Si desea mantener también el registro en el elemento httpHandlers, cree un elemento validation en la sección system.webServer (si no existe) y establezca su atributo validateIntegratedModeConfiguration en false. Para obtener más información, vea Cómo: Suprimir advertencias de registro de IIS 7.0,

Vea también

Tareas

Cómo: Registrar controladores HTTP