
- •Для расширения возможностей клиент- серверного взаимодействия в рамках протокола HTTP помимо создания на
- •ПРИЛОЖЕНИЯ, ПЛАГИНЫ, СЦЕНАРИИ
- •Каждый раз, когда веб-сервер получает запрос от клиента, он анализирует содержимое запроса и
- •СЦЕНАРИИ
- •Поскольку сценарии интерпретируются из исходного кода динамически при каждом исполнении, они выполняются обычно
- •PYTHON
- •Для всех основных платформ Python имеет поддержку характерных для данной платформы технологий (например,
- •Стандартная библиотека Python имеет средства для работы со многими сетевыми протоколами и форматами
- •Помимо стандартной библиотеки существует множество библиотек, предоставляющих интерфейс ко всем системным вызовам на
- •RUBY
- •Ruby
- •В Ruby можно добавлять методы не только в любые классы, но и в
- •В языке Ruby реализован простой и удобный механизм для расширения языка с помощью
- •АРХИТЕКТУРА ASP
- •Файлы ASP представляют собой сценарии, интерпретируемые по мере поступления запросов.
- •ОСНОВЫ ASP
- •Событие веб-запроса обрабатывается с помощью следующих объектов:
- •ISAPI
- •В противоположность CGI - ISAPI-приложение загружается в том же адресном пространстве, что и
- •Главными недостатками разработки веб- приложений с помощью ISAPI являются:
- •ISAPI - ПРИЛОЖЕНИЯ
- •ISAPI приложения могут разрабатываться с помощью любых языков, поддерживающих экспорт стандартных С- функций,
- •ISAPI-расширения имеют доступ ко всем функциональным возможностям IIS.
- •ISAPI-фильтры необходимы для изменения или совершенствования функциональности IIS.
- •ISAPI-фильтры обычно используются для решения следующих задач:
- •ASP (Active Server Pages )

В противоположность CGI - ISAPI-приложение загружается в том же адресном пространстве, что и IIS веб-сервер.
Это позволяет повысить производительность приложений благодаря сокращению издержек на запуск отдельных процессов. Однако сбой
ISAPI-приложения может привести к неустойчивой работе самого веб-сервера.
В 6-ой версии IIS имеется возможность запуска приложений в рамках отдельного процесса.

Главными недостатками разработки веб- приложений с помощью ISAPI являются:
увеличение сроков разработки по сравнению со сценарными языками, например, PHP и ASP.
недостаточная поддержка таких стандартных особенностей веб-приложений как управление сессиями.
поскольку ISAPI-расширения обычно создаются с использованием ненадежных С-подобных языков также возрастает риск переполнения буфера и других уязвимостей.

ISAPI - ПРИЛОЖЕНИЯ
ISAPI включает в себя 2 компоненты:
расширения и фильтры.
Таким образом, все многообразие разрабатываемых ISAPI-приложений сводится только к этим двум типам.
И фильтры и расширения
компилируются в DLL файлы динамически запускаемые веб- сервером.

ISAPI приложения могут разрабатываться с помощью любых языков, поддерживающих экспорт стандартных С- функций, например С, С++, Delphi.
Для разработки имеется ограниченное число библиотек для разработки ISAPI приложений, например Intraweb- компоненты Delphi Pascal, специальные MFC-классы, специальная С++ библиотека серверных технологий ATL.

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

ISAPI-фильтры необходимы для изменения или совершенствования функциональности IIS.
Они обычно работают с IIS-сервером и фильтруют каждый запрос.
Фильтры применяются для анализа и модификации входящих и исходящих потоков данных.
Фильтры также реализуются в виде DLL файлов.

ISAPI-фильтры обычно используются для решения следующих задач:
Изменение данных в запросе клиента (URL или заголовков)
Управление отображением URL в физические файлы
Управление именами и паролями пользователей при анонимной или базовой аутентификации
Анализ и модификация запросов по завершении аутентификации
Модификация ответа веб-сервера
Ведение журналов и анализ траффика
Реализация собственной аутентификации
Управление шифрацией и сжатием.

ASP (Active Server Pages )
ASP.NET
ColdFusion
Perl ISAPI (Perlis)
PHP