La Interfaz de Programación de Aplicaciones para Servidores de Internet ( ISAPI ) es una API de n niveles de los Servicios de Información de Internet (IIS), el conjunto de servicios de servidor web basados en Windows de Microsoft. La aplicación más destacada de IIS e ISAPI es el servidor web de Microsoft.
El módulo mod_isapi de Apache también ha implementado ISAPI, lo que permite utilizar con Apache aplicaciones web del lado del servidor escritas para IIS de Microsoft. Otros servidores web de terceros, como Zeus Web Server, también ofrecen interfaces ISAPI.
El software de servidor web de Microsoft, Internet Information Services (IIS) , se compone de varias "subaplicaciones" configurables. ASP.NET es una de estas subaplicaciones, que permite a los programadores escribir aplicaciones web en el lenguaje de programación de su elección (VB.NET, C#, F#) compatible con el CLR de Microsoft .NET. ISAPI es un sistema de programación de nivel mucho más bajo, que ofrece un rendimiento superior, aunque a costa de la simplicidad.
Aplicaciones ISAPI
ISAPI consta de dos componentes: extensiones y filtros. [ 1 ] Estos son los únicos dos tipos de aplicaciones que se pueden desarrollar utilizando ISAPI. Tanto los filtros como las extensiones deben compilarse en archivos DLL, que luego se registran en IIS para ejecutarse en el servidor web.
Las aplicaciones ISAPI se pueden escribir en cualquier lenguaje que permita la exportación de funciones estándar de C, como C, C++ o Delphi. Existen varias bibliotecas que facilitan el desarrollo de aplicaciones ISAPI, y en Delphi Pascal se encuentran los componentes Intraweb para el desarrollo de aplicaciones web. MFC incluye clases para el desarrollo de aplicaciones ISAPI. Además, la tecnología ATL Server incluye una biblioteca de C++ específica para el desarrollo de aplicaciones ISAPI.
Extensiones
Las extensiones ISAPI son aplicaciones que se ejecutan en IIS. Tienen acceso a todas las funcionalidades que ofrece IIS. Se implementan como DLL que se cargan en un proceso controlado por IIS. Los clientes pueden acceder a las extensiones ISAPI del mismo modo que acceden a una página HTML estática. Ciertas extensiones de archivo, una carpeta completa o un sitio web pueden configurarse para ser gestionados por una extensión ISAPI.
Filtros
Los filtros ISAPI se utilizan para modificar o mejorar la funcionalidad que ofrece IIS. Siempre se ejecutan en un servidor IIS y filtran todas las solicitudes hasta encontrar una que deban procesar. Los filtros se pueden programar para examinar y modificar tanto los flujos de datos entrantes como salientes. Las prioridades, programadas internamente y configuradas externamente, determinan el orden en que se invocan los filtros.
Los filtros se implementan como DLL y se pueden registrar en un servidor IIS a nivel de sitio o global (es decir, se aplican a todos los sitios en un servidor IIS). Los filtros se inicializan cuando se inicia el proceso de trabajo y escuchan todas las solicitudes al sitio en el que están instalados.
Las tareas comunes que realizan los filtros ISAPI incluyen:
- Modificación de los datos de la solicitud (URL o encabezados) enviados por el cliente.
- Controlar qué archivo físico se asigna a la URL.
- Controlar el nombre de usuario y la contraseña utilizados con la autenticación anónima o básica.
- Modificar o analizar una solicitud después de que se haya completado la autenticación.
- Modificar una respuesta que se envía al cliente.
- Ejecutar un procesamiento personalizado en las respuestas de "acceso denegado".
- Ejecutar el procesamiento cuando se complete una solicitud.
- Ejecutar el procesamiento cuando se cierra la conexión con el cliente.
- Realizar análisis de tráfico o registros especiales .
- Realizando autenticación personalizada.
- Manejo del cifrado y la compresión.
Aplicaciones ISAPI comunes
Esta es una lista de aplicaciones ISAPI comunes implementadas como extensiones ISAPI:
- Páginas activas del servidor (ASP), instaladas de serie
- ActiveVFP, Active Visual FoxPro instalado en IIS
- ASP.NET , instalado de forma estándar en IIS 6.0 y versiones posteriores.
- ColdFusion y versiones posteriores se pueden instalar en IIS.
- Perl ISAPI (también conocido como Perliis), disponible para su instalación gratuita.
- PHP , disponible para su instalación gratuita, ya no recibe mantenimiento. [ 2 ]
Desarrollo de ISAPI
Las aplicaciones ISAPI se pueden desarrollar utilizando cualquier herramienta de desarrollo que pueda generar una DLL de Windows . Los asistentes para generar aplicaciones con marco de trabajo ISAPI están disponibles en las herramientas de desarrollo de Microsoft desde Visual C++ 4.0.
Véase también
Referencias
- Interfaces de programación de aplicaciones de Microsoft