Введение

Интерфейс программирования приложений для интернет-серверов (ISAPI) — это многоуровневый API служб Internet Information Services (IIS), набора веб-серверных служб Microsoft для Windows. Наиболее распространенное применение IIS и ISAPI — веб-сервер Microsoft. ISAPI также был реализован в виде модуля для Apache, что позволяет использовать веб-приложения, разработанные для IIS от Microsoft, с сервером Apache. Другие сторонние веб-серверы, такие как Zeus Web Server, также предоставляют интерфейсы ISAPI. Программное обеспечение для веб-серверов Microsoft называется Internet Information Services и состоит из ряда "подприложений", обладающих высокой степенью конфигурируемости. ASP.NET — один из таких компонентов IIS, позволяющий программистам разрабатывать веб-приложения на выбранном ими языке программирования (VB.NET, C#, F#), поддерживаемом платформой Microsoft .NET CLR. ISAPI представляет собой систему программирования более низкого уровня, обеспечивающую более высокую производительность, но при этом менее простую в использовании.

Приложения ISAPI

ISAPI состоит из двух компонентов: расширений и фильтров. Это два единственных типа приложений, которые можно разрабатывать с использованием ISAPI. И фильтры, и расширения должны быть скомпилированы в файлы DLL, которые затем регистрируются в IIS для работы на веб-сервере. Приложения ISAPI можно создавать на любом языке программирования, позволяющем экспортировать стандартные функции C, например, на C, C++, Delphi. Существует несколько библиотек, облегчающих разработку приложений ISAPI, а в Delphi Pascal – компоненты Intraweb для разработки веб-приложений. MFC включает классы для разработки приложений ISAPI. Кроме того, существует технология ATL Server, включающая библиотеку C++, предназначенную для разработки приложений ISAPI.

Расширения

Расширения ISAPI — это полноценные приложения, работающие на IIS. Они имеют доступ ко всей функциональности, предоставляемой IIS. Расширения ISAPI реализуются в виде DLL, которые загружаются в процесс, управляемый IIS. Пользователи могут обращаться к расширениям ISAPI так же, как и к обычной статической HTML-странице. Для обработки расширением ISAPI можно настроить определенные расширения файлов, целые папки или сайты.

Развитие ISAPI

Приложения ISAPI могут быть разработаны с использованием любого инструмента разработки, способного создавать Windows DLL. Мастера создания приложений ISAPI Framework доступны в средствах разработки Microsoft, начиная с Visual C++ 4.0.