Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IT_po_voprosam.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
109 Кб
Скачать
☆

30)Интерфейс isapi

Для веб-сервера IIS (Internet Information Server). был разработан специальный программный интерфейс для создания приложений расширяющих стандартные возможности веб-сервера.

ISAPI (Internet Server Application Programming Interface) – многозвенный API для IIS.

ISAPI также реализован в виде модуля mod_isapi для веб-сервера Apache. Таким образом, серверные приложения, разработанные для MS IIS могут также выполняться в Apache и других веб-серверах.

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

ISAPI включает в себя 2 компоненты: расширения и фильтры.

Таким образом, все многообразие разрабатываемых ISAPI-приложений сводится только к этим двум типам. И фильтры и расширения компилируются в DLL файлы динамически запускаемые веб-сервером.

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

К наиболее важным особенностям ISAPI-расширений можно отнести следующие:

  • ISAPI -расширения имеют доступ ко всем функциональным возможностям IIS.

  • Реализуются в виде DLL-модулей, загружаемых в пространстве процесса, контролируемого IIS.

  • Клиенты могут обращаться к ISAPI -расширениям также как к статическим HTML страницам.

  • ISAPI -расширения могут быть ассоциированы с отдельными расширениями файлов, с целыми каталогами или сайтами.

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

Фильтры также как и расширения реализуются в виде DLL файлов.

Обычно ISAPI-фильтры используются для решения следующих задач:

  • Изменение данных в запросе клиента (URL или заголовков).

  • Управление отображением URL в физические файлы.

  • Управление именами и паролями пользователей при анонимной или базовой аутентификации.

  • Анализ и модификация запросов по завершении аутентификации.

  • Модификация ответа веб-сервера.

  • Ведение журналов и анализ трафика.

  • Реализация собственной аутентификации.

  • Управление шифрацией и сжатием.

Стоит отметить, что существуют реализации в виде ISAPI-расширений для таких инструментальных средств как:

  • ASP (Active Server Pages )

  • ASP.NET

  • ColdFusion

  • Perl ISAPI (Perlis)

  • PHP

31)Язык Perl: синтаксис, основы

Язык Perl (Practical Extraction and Report Language) — это язык программирования, сильными сторонами которого считаются его богатые возможности для работы с текстом, в том числе реализованные при помощи регулярных выражений. Также язык известен тем, что имеет огромную коллекцию дополнительных модулей CPAN.

Чтобы запустить программу на языке Perl на выполнение, ее компиляция не требуется, она вполне может выполняться под управлением интерпретатора. Чтобы файл с исходным текстом Perl можно было запускать на выполнение, надо чтобы первая его строка выглядела так:

#!путь_к_интерпретатору_Perl

Основными типами данных в языке являются: скаляры, массивы (скалярные), хеш-таблицы (ассоциативные массивы), функции, файловые дескрипторы и константы.

Переменные разных типов отличаются знаком, который стоит перед именем переменной:

$a - скаляр или указатель

@b - скалярный массив

%c - ассоциативный массив (хеш-таблица)

&d - функция

F - дескриптор ввода-вывода или константа

Скалярные переменные используются для хранения одиночных значений. Они могут содержать числа, строки и ссылки на другие объекты. Перед именем скалярной переменной необходимо ставить знак доллара '$'. Тип скалярной переменной не фиксирован и определяется динамически в зависимости от контекста.

Скалярный массив является упорядоченным списком скаляров. Каждый элемент массива имеет порядковый номер (индекс), с помощью которого к нему можно получить доступ. Нумерация элементов начинается с нуля.

Перед именем переменной типа скалярный массив указывается знак @, а для доступа к определенному элементу массива необходимо ставить знак $, так как определенный элемент массива является скаляром:

@winter = ("декабрь", "январь", "февраль");

print "Второй месяц зимы ", $winter[1], "\n";

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]