Студопедия

Главная страница Случайная лекция


Мы поможем в написании ваших работ!

Порталы:

БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика



Мы поможем в написании ваших работ!




Примеры. convlog -sf -t ncsa -o c:\logs in*.log

convlog -sf -t ncsa -o c:\logs in*.log

convlog -t ncsa:-0300 in*.log

convlog -o \\stats\logs c:\logs\in*.log

convlog -sfg in*.log

convlog -nm *.log

convlog -t none -nm:20000 *.log

 

ГЛАВА 8

Публикация данных и приложений

 

Службы узла Web для Windows NT позволяют публиковать как данные, так и приложения. Таким образом, узел Web может содержать все, что угодно, от статических страниц до интерактивных приложений. Кроме того, можно осуществлять поиск, выборку и запись информации в базы данных.

Этой главе объясняется как:

· подготовить компьютер и данные для публикации;

· установить и использовать интерактивные приложения;

· публиковать данные с помощью технологии ODBC (Open Database Connectivity) — технологии совместимых источников данных.

 

Подготовка данных для публикации

Большинство страниц Web имеет формат HTML (Hypertext Markup Language). Файлы HTML представляют собой текстовые файлы ASCII, содержащие коды инструкций форматирования и гипертекстовые ссылки. Спецификации языка HTML постоянно изменяются. Для точной разметки собственных станиц HTML следует ознакомиться с последними спецификациями HTML, доступными через Интернет.

Создание файлов формата HTML

Для создания и изменения файлов HTML можно применять любой текстовый редактор, в том числе блокнот Windows или Write; однако удобнее пользоваться специальными редакторами документов HTML, такими как Microsoft® FrontPage™ или Internet Assistant для Microsoft® Word.

С помощью редактора документов HTML можно создавать гиперссылки на другие файлы. Для вставки в документ изображений и звукозаписей следует установить в системе соответствующее программное обеспечение.

Публикация документов HTML и файлов других форматов

Документы HTML могут содержать изображения и звукозаписи, а также ссылки на файлы Microsoft® Office и файлы других форматов. Для просмотра файла с форматом, отличным от HTML, удаленный пользователь должен установить на компьютере соответствующее приложение. Например, если все удаленные пользователи имеют Microsoft Word, в публикуемых документах можно использовать ссылки на файлы с расширением DOC. Пользователь может открыть документ Word на своем компьютере щелчком по ссылке.

После создания документа HTML или документа другого формата скопируйте файл в основной каталог Inetsrv\Wwwroot или назначьте каталог, содержащий публикуемый файл, основным каталогом.

Настройка отображения MIME

Если узел Web содержит файлы, использующие разные форматы, необходимо выполнить настройку отображения MIME (Multipurpose Internet Mail Extension). Если какой-либо формат будет пропущен при настройке, система просмотра не сможет загрузить такой файл. Параметры отображения MIME, используемые по умолчанию, см. в системном реестре Windows NT.

Чтобы настроить отображение MIME, запустите редактор реестра (Regedt32.exe) и откройте

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters\MimeMap

Добавьте значение REG_SZ, используя следующий синтаксис:

<тип mime>,<расширение имени>,<неиспользуемый аргумент>,<тип Gopher>

Например:

text/html,htm,/unused,1
image/jpeg,jpeg,/unused,5

Оставьте пустой строку данных, связанную с новым значением. При отсутствии отображения MIME для заданного расширения, по умолчанию используется тип MIME для расширения в виде звездочки (*). Например, чтобы обработать запрос на файл Current.vgr (для расширения VGR отсутствует отображение MIME), сервер будет использовать тип MIME, указанный для звездочки (двоичные данные). Как правило, это приводит к сохранению файла на диске.

Вставка файлов с помощью оператора include

Перед отправкой в файлы HTML можно поместить информацию общего характера. Эта возможность предусмотрена для добавления на разные страницы HTML одинаковых объектов, например сведений об авторах или ссылок на основную страницу.

Оператор include имеет следующий формат:

<!--#include file="значение"-->

Аргумент значение содержит относительный или полный путь из основного каталога службы WWW.

Например, чтобы включить в каждый документ HTML ссылку на основную страницу:

1. Создайте файл Linkhome.htm с инструкциями HTML для создания повторяемого объекта, например кнопки для перехода на основную страницу. В этом случае файл может содержать следующее:

<A HREF="/homepage.htm"><IMG SRC="/images/button_h.gif"></A>

2. При создании документов Web присвойте файлам расширение STM (вместо HTM или HTML).

Примечание.Расширение STM указывает на наличие в файле оператора include. Если файл имеет расширение HTM или HTML, оператор include не будет обрабатываться.

Применение файлов STM может повлиять на производительность системы. Используйте это расширение только в случае необходимости.

В системном реестре Windows NT можно изменить расширение STM на любое другое, кроме HTM и HTML. Подробности см. в разделе системного реестра ServerSideIncludesExtension в главе 10 Работа с данными системного реестра.

3. В каждый файл с расширением STM вставьте строку с оператором include file. Например:

Вы можете вернуться к <!--#include file="/linkhome.htm"--> в любой момент времени.


Все пути составляются относительно основного каталога WWW и могут включать виртуальные каталоги.

 

Публикация динамических приложений

Одним из значимых средств, предоставляемых службами узла Web, является технология создания приложений и сценариев, которые могут запускать щелчком ссылки HTML или посредством заполнения и отправки формы HTML. С помощью языков программирования, например C или Perl, можно создавать приложения или сценарии для работы с динамическими страницами.

Создание приложений и сценариев

Интерактивные приложения и сценарии могут быть реализованы на любом 32-разрядном языке программирования, например на C или Perl, или на языке командных файлов Windows NT (расширение BAT или CMD). При создании приложений и сценариев можно использовать один из двух поддерживаемых интерфейсов ISAPI (Microsoft Internet Server Application Programming Interface) или CGI (Common Gateway Interface). Документация на ISAPI распространяется по подписке на MSDN (Microsoft Developer Network). Введение в CGI изложено в этой главе, а дополнительные сведения можно получить по Интернету. Командные файлы могут содержать любые правильные инструкции, выполняемые из командной строки.

Приложения ISAPI компилируются в виде библиотек динамической компоновки (DLL) и загружаются для выполнения службой WWW. Поскольку такие коды находятся в памяти резидентно, программы ISAPI работают значительно быстрее приложений CGI.

Новая версия языка Perl с поддержкой ISAPI

Независимый производитель программного обеспечения Hip, Inc., развивающий язык Perl для платформы Win32, разработал версию Perl со встроенной поддержкой ISAPI. Таким образом, сценарии Perl теперь выполняются быстрее, чем ранее. Несопровождаемая версия ISAPI Perl доступна на узле http://www.perl.hip.com/. Вопросы (в особенности по существующим сценариям Perl) можно посылать по адресу perlis@mail.hip.com.

Интерфейс ISAPI (Internet Server API)

Интерфейс ISAPI для Windows NT применяется для разработки приложений Web, которые пользователи могут запускать на вашем узле Web с помощью заполнения формы HTML или щелчком ссылки на странице HTML. Удаленное приложение может принимать в качестве аргументов пользовательские данные, выполнять необходимые действия и возвращать результаты на страницу HTML или пересылать их в базу данных.

Приложения ISAPI представляют собой библиотеки динамической компоновки (DLL), выполняемые на сервере Web. Приложения ISAPI работают быстрее сценариев CGI (Common Gateway Interface), поскольку находятся в памяти сервера резидентно и каждый новый запрос не приводит к запуску отдельного процесса.

 

 

Средства ISAPI позволяют выполнять предварительную обработку запросов и завершающую обработку ответов, реализуя конкретный для данного узла способ работы с запросами и ответами. Фильтры ISAPI применяются в пользовательских приложениях, осуществляющих проверку подлинности, доступ к ресурсам или ведение журнала.

 

 

С помощью фильтров ISAPI и приложений можно создать очень сложный узел. Расширения ISAPI используются в интерактивных системах совместно с приложением Internet Database Connector.

 

 

 

Программирование ISAPI подробно изложено в пакете Microsoft Win32SDK (Software Development Kit), доступном через MSDN. Дополнительные сведения о получении ISAPI SDK см. в главе Перед началом работы этого руководства.

 

 

Интерфейс CGI (Common Gateway Interface)

Интерфейс CGI (Common Gateway Interface) представляет собой набор спецификаций для обмена данными между средством просмотра, сервером Web и приложением CGI. Средство просмотра Web клиента может запускать приложение CGI с помощью заполнения формы HTML или щелчком ссылки на странице HTML. Подобно фильтру ISAPI приложение CGI может принимать данные от клиента, выполнять предписанные действия и возвращать результаты обработки на страницу HTML или отправлять в базу данных. Поскольку приложения CGI часто реализуются на языке сценария, например Perl, они называются сценариями CGI.

Службы узла Web могут использовать большинство 32-разрядных приложений, работающих в Windows NT и удовлетворяющих спецификациям CGI.

На следующем рисунке показано как средство просмотра, сервер и приложение CGI обмениваются данными в соответствии со спецификациями CGI. Остальная часть настоящего раздела раскрывает содержание пяти этапов, показанных на рисунке.

 

 

Клиент посылает запрос

Средство просмотра клиента может отправить на сервер запрос CGI любым из следующих двух методов:

GET

Данные добавляются в адрес URL и передаются на сервер.

POST

Данные отправляются на сервер в поле сообщения HTTP (таким образом преодолеваются ограничения метода GET).


Клиент инициирует процесс CGI щелчком на странице HTML:

· гиперссылки, запускающей сценарий непосредственно;

· кнопки Submit или Отправить в форме HTML;

· объекта, найденного с помощью метода GET;

· объекта поиска (т.е. объекта, использующего ссылку ISINDEX).

Сервер получает запрос

Адрес URL, который средство просмотра клиента посылает серверу, содержит имя исполняемого сценария CGI или приложения. Сервер проверяет записи системного реестра в разделе Script Mapping для поиска отображения расширения имени файла (т.е. программы, запускаемой для выполнения этого файла). В разделе Script Mapping системного реестра сервера содержатся отображения для файлов с расширениями CMD и BAT, которые обрабатываются Cmd.exe, и для файлов IDC, запускающих Internet Database Connector. Чтобы запустить приложение CGI без отображения расширения, добавьте соответствующую запись для этого приложения в раздел реестра. Например, чтобы запустить сценарий Perl, добавьте следующую запись:

.pl: REG_SZ: C:\RESKIT\PERL\BIN\PERL.EXE %s %s

Здесь

· \Reskit\Perl\Bin\— каталог, содержащий исполняемую программу;

· Perl.exe — исполняемая программа;

· первый аргумент %s — преобразованный путь сценария PERL (адрес URL преобразован в локальный путь);

· второй аргумент %s — данные из адреса URL (строка запроса), которые передаются в командную строку, если строка запроса не содержит знак равенства (=).

Сервер передает запрос приложению

Сервер передает данные приложению CGI посредством переменных среды, затем запускает приложение. Некоторые из этих переменных связаны с сервером; большинство приходит из средства просмотра клиента и имеет отношение либо непосредственно к средству просмотра клиента, либо к посланному запросу. См. таблицу в конце этой главы с неполным списком переменных среды.

Приложение CGI возвращает данные серверу

Приложение выполняет обработку данных. Если возможно, приложение выводит данные в стандартный выходной поток (STDOUT). Возвращаемые данные должны иметь следующий формат:

1. Первая строка или строки директив сервера должны содержать тип MIME, директиву Location (указывающую или возвращающую клиенту другой документ) и директиву Status.

2. После директив сервера должна следовать пустая строка.

3. За пустой строкой должны следовать данные приложения.

Сервер возвращает данные клиенту

Сервер принимает данные из потока STDOUT и добавляет к ним стандартный заголовок HTTP. Затем сервер передает сообщение HTTP обратно клиенту.

Дополнительные сведения о CGI, см. в спецификациях CGI по адресу http://hoohoo.ncsa.uiuc.edu/cgi/.

Интерфейс CGI и службы узла Web

Служба WWW поддерживает спецификацию CGI (Common Gateway Interface). Применительно к реализации CGI в службах узла Web необходимо знать следующее:

· для этой версии только 32-разрядные приложения CGI работают со службой WWW;

· переменная среды REMOTE_USER отсутствует при анонимном подключении к серверу;

· все переменные, определенные для ISAPI приложений, передаются приложению CGI как переменные среды.


Как правило, приложения CGI являются программами, выполняемыми автономно, в отличие от приложений ISAPI, которые обычно загружаются в виде библиотек DLL и, следовательно, являются расширениями сервера.

Рекомендации по защите данных при использовании сценариев и приложений

Исполняемые программы CGI (Common Gateway Interface) следует применять с максимальной предосторожностью, чтобы уменьшить вероятность нарушения системы защиты данных на сервере. В виртуальных каталогах, содержащих приложения CGI или ISAPI (Internet Server API), предоставляйте разрешение только на выполнение файлов.

Настоятельно рекомендуется настроить отображение расширений имен файлов (для файлов сценариев). Отображение расширений имен файлов позволит автоматически выбрать интерпретатора исполняемого файла клиентского запроса, например Cmd.exe.

Каталоги документов World Wide Web должны иметь разрешение только на чтение. Любые исполняемые файлы, предназначенные для запуска с дисков файловой системы Windows NT (NTFS), должны иметь доступ только на чтение.

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

Примечание.Исполняемые файлы CGI могут иметь расширение EXE или CGI.

Разрешение выполнения приложений ISAPI

Службы узла Web открывают ISAPI приложения по запросу пользователя с учетом установленных параметров защиты. Проверка доступа выполняется для каждого пользовательского запроса. Для запрета выполнения приложений ISAPI, например Internet Database Connector, можно применять разрешения NTFS.

Например, чтобы защитить Internet Database Connector без проверки разрешений на файл с расширением IDC, можно в системе NTFS предоставить только соответствующим пользователям разрешение на выполнение файла Inetsrv\Server\Httpodbc.dll. Файл Httpodbc.dll содержит библиотеку динамической компоновки Internet Database Connector. Всякий раз, когда пользователь запросит Internet Database Connector, сервер проверит его права. Приложение будет запущено, если этому пользователю предоставлено разрешение на его выполнение.

Примечание.Если приложение ISAPI запущено, оно будет оставаться в памяти компьютера до тех пор, пока служба WWW не будет остановлена. Службы узла Web не отслеживают изменения описателя защиты после запуска приложения ISAPI. Если разрешения на файл ISAPI изменяются после запуска приложения, необходимо перезапустить службу WWW.

Соблюдайте осторожность при работе с таблицами управления доступом (ACL) каталога Winnt и его подкаталогами. Некоторые приложения ISAPI и базы данных требуют доступа к файлам и библиотекам динамической компоновки (DLL) в этих каталогах.

Примечание.Библиотеки динамической компоновки приложения ISAPI имеют расширение DLL или ISA.

Установка приложения для служб узла Web

Поместите свое приложение или сценарий в каталог Scripts (виртуальный каталог для приложений). В этом виртуальном каталоге установлено разрешение на выполнение.

Необходимо, чтобы каждый процесс, начатый приложением, использовал учетную запись с адекватными разрешениями. Если приложение взаимодействует с другими файлами, учетная запись, используемая программой, должна иметь соответствующие разрешения на доступ к этим файлам. По умолчанию приложения, запускаемые по учетной записи IUSR_имякомпьютера, должны иметь разрешения на выполнение и администрирование.

Выполнение приложения

Если приложение не предполагает ввода данных, для его запуска обычно создается ссылка в файле HTML. Если приложение принимает данные от пользователя, следует применить форму HTML. В других случаях можно послать запрос универсального указателя ресурсов (адрес URL), обычно содержащий параметры для вызова программы.

Ссылка HTML на приложение, которое не требует ввода данных от пользователя, может иметь следующий вид:


<== предыдущая страница | следующая страница ==>
Параметры | Расширение Интерпретатор

Дата добавления: 2015-07-26; просмотров: 366; Нарушение авторских прав




Мы поможем в написании ваших работ!
lektsiopedia.org - Лекциопедия - 2013 год. | Страница сгенерирована за: 0.006 сек.