- •1)Интернет: понятие, история развития
- •2)Стандартизация в Интернет. Rfc-документы
- •3)Стек протоколов tcp/ip
- •4)Система доменных имен dns
- •5)Структура и принципы www
- •6) Прокси-серверы
- •7) Протоколы Интернет прикладного уровня
- •8)Протокол http. Схема http-сеанса. Состав http-запроса
- •9)Обеспечение безопасности передачи данных http
- •11) Структура ip-адреса
- •12)Наиболее популярные утилиты для диагностики сетевой конфигурации и сетевых соединений
- •13)Основы протокола http
- •14)Основные понятия и принципы веб-дизайна
- •15)Основные возможности при разработке веб страниц и веб сайтов с помощью Microsoft Expression Web 2
- •16)Программы, выполняющиеся на клиент-машине. Программы выполняющиеся на сервере. Насыщенные интернет-приложения.
- •17)Введение в jScript: типы данных, операторы, функции и объекты
- •Типы данных
- •Операторы
- •Функции и объекты
- •18)Краткая характеристика vbScript. Java-апплеты
- •19)Action Script –общая характеристика. Xaml и Microsoft Silverlight
- •20)Понятие dom. Dhtml. Регулярные выражения
- •21)Элементы языка разработки клиентских веб-сценариев JavaScript
- •23)Обработка в JavaScript событий, связанных с окном веб-браузера, веб страницей, содержащейся в браузере и элементы документа
- •24)Регулярные выражения для поиска подстрок,структура и содержание которых описывается нетривиальным шаблоном
- •25)Стандарт cgi
- •26)Сценарии. Сценарные языки: классификация по быстродействию
- •17)Язык Python.
- •28)Язык Ruby
- •29) Технология asp
- •30)Интерфейс isapi
- •31)Язык Perl: синтаксис, основы
- •32)Язык php: синтаксис, основы
- •33)Основы разрабоки веб-сценариев на языке Perl
- •34) Основы разрабоки веб-сценариев на языке php
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";
