- •Обработка форм Для этого необходимо наличие:
- •-что с ней происходит;
- •Такая программа называется:
- •Диалог пользователя
- •6.Сценарий передает ответ серверу.
- •Атрибуты:
- •Механизм CGI
- •-переменные окружения;
- •Виды ответов
- •3. Переадресация
- •Механизмы обмена
- •I.Переменные окружения
- •б) Запросо-ориентированные
- •- REQUEST_METHOD -
- •- QUERY_STRING - информация о запросе, переданная в программу. Для присоединения этой информации
- •В QUERY_STRING помещается все,
- •Следующие две переменные определяют тип и длину передаваемой информации от клиента к серверу.
- •- CONTENT_LENGTH - определяет, сколько байтов необходимо прочитать из стандартного потока.
- •Обработка результатов
- •Заголовок состоит из одной или
- •Прямой возврат
- •Сервер просматривает
- •Методы доступа
- •1. Метод GET
- •Имеется разновидность метода
- •2. Метод POST
- •Данные в методе POST идут в таком же формате, как и для метода
- •Символ “пробел” заменяется
- •3. Метод HEAD
- •Ответ сервера
- •2. Полный ответ
- •Строка состояния
- •Классы кодов
- •Это могут быть:
- •- 5хх – ошибки сервера (сервер столкнулся с ошибкой и, вероятно, не сможет
- •Код возврата обозначает
- •Настройка
- •Необходимо:
- •б) ищется переменная
- •2.Файл httpd.conf
- •Для Web-сервера Apache версии
- •Работа с Web-сервером:
- •-если компьютер подключен к
- •-Включить кнопку «Использовать
- •В браузере Firefox надо проделать
- •В браузере Opera надо проделать
- •Вам выдан файл:
- •1.Если доступен диск C:, то в нем
- •4. Если Вы всё проделали:
- •7. Для выключения работы сервера
- •Примеры скриптов
- •Вначале необходимо включить
- •Способ 1. int *L_s; int cnl;
- •char str [1024]; fgets (str, cnl, stdin);
- •Способ 2
- ••Можно сделать и так: char *pR_M;
- •Delphi
- •2. Чтение и запись стандартными
- •3. Для получения значений
- •Эта функция возвращает:
- •Например
- •II.Через объекты
- •3. В Инспекторе объектов выбрать
- •5.Перейти в Инспектор объектов на
- •В заготовке будет процедура
- ••В заготовке процедуры можно
- •В переменной Str_Data все строки
- ••Для извлечения значений полей
- •Для помещения данных при
Виды ответов
1. |
|
Скрипт выдает только |
|
содержимое. |
|
a) Content-type: text/html |
|
или |
|
Content-type: text/plain |
|
б) Пустая строка |
|
в) <html><head> |
|
<title> |
|
Обрабатываемый результат |
|
</title> |
11 |
|
<body>
Содержимое ответа </body>
</html>
2. Полный ответ (не будем)
12
3. Переадресация
В этом случае идет следующий заголовок ответа:
Location: /cgi/usr/my_path/my_doc.html
Пустая строка
13
Механизмы обмена
Собственно спецификация CGI описывает четыре набора механизмов обмена данными:
•- через переменные окружения;
•- через командную строку;
•- через стандартный ввод;
•- через стандартный вывод.
14
I.Переменные окружения
При запуске внешней программы сервер создает специфические переменные окружения, через которые передает приложению как служебную информацию, так и данные.
Все переменные можно разделить на общие переменные окружения, которые генерируются при любой форме запроса, и запросо- ориентированные переменные. 15
б) Запросо-ориентированные
переменные
16
- REQUEST_METHOD -
определяет метод доступа к информационному ресурсу.
Это важнейшая переменная в CGI.
Разные методы доступа используют различные механизмы передачи данных.
Это переменная может принимать значения: GET, POST, HEAD и др.
17
- QUERY_STRING - информация о запросе, переданная в программу. Для присоединения этой информации к URL
используется знак "?". Т.е. эта переменная определяет содержание запроса к сценарию.
Чрезвычайно важна при |
|
использовании метода доступа |
|
GET. |
18 |
В QUERY_STRING помещается все,
что записано после символа "?":
QUERY_STRING => "nuclear+isotop"
При этом никакого преобразования строки запроса сервером не производится.
Все манипулирования с содержанием QUERY_STRING возможны только в сценарии.
19
Следующие две переменные определяют тип и длину передаваемой информации от клиента к серверу.
- CONTENT_TYPE - определяет MIME-тип данных, передаваемых сценарию.
Используя эту переменную, можно |
|
одним скриптом обрабатывать |
|
различные форматы данных. |
20 |