Internet технологии Основная страница    Литература    Тематические ссылки
(конспект)
 Работа в Internet Основы HTML Web-дизайн Web-мастеринг
Введение
E-mail
Поиск информации
FTP
Введение
Ссылки и иллюстрации
Таблицы и списки
Фреймы и формы
Введение
DreamWeaver
HomeSite
Каскадные таблицы стилей CSS
Photoshop 5.5 для Web-дизайна
AdobeImageReady 2.0
Ulead GifAnimator 2.0
JavaScript
>> CGI
IIS 4.0
ASP. VBScript
Работа с БД
Perl
Java
Курс: Web-мастеринг
Common Gateway Interface (CGI)
1. Работа на стороне сервера.
2. Понятие протокола обмена данными.
3. Переменные CGI.

.. ../ /

1. Работа на стороне сервера.

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

.. ../ /

2. Понятие протокола обмена данными.

Стандарт CGI (Common Gateway Interface) для стандартизации обмена данными в Internet (интерфейс общего доступа).

CGI - не язык, это реализация стандарта интерфейса. Не важно на каком языке написан скрипт.

Специализированные языки:
HTML-страница клиента
<form action="f.cgi>				
	<input type="submit" value="SUBMIT">
	…
</form>
Сервер
f.cgi
После клика на кнопку SUBMIT данные формы передаются на сервер, на сервере запускается программа, указанная в методе action (f.cgi). Action указывает какой файл на сервере будет обрабатывать данные формы. Результатом является HTML-страница, которая посылается обратно клиенту.

CGI не зависит ни от платформы машины, ни от операционной системы.
Любой сервер формирует набор собственных переменных с заданными именами, имена переменных фиксированы на любых серверах. Эти переменные называют: переменные сервера, переменные CGI, переменные окружения - это все одно и тоже.

Переменные CGI содержат следующую информацию (можно разделить на три группы):

  1. Информацию о браузере клиента
  2. Информацию о сетевых ресурсах клиента (его адрес, имя…)
  3. Информацию о сервере
Как происходит получение информации:
Адрес: http://mail.ru
Вместе с этим посылается информация о клиенте.

.. ../ /

3. Переменные CGI.

(их порядка 40 штук)

Регистр написания букв не принципиален.

Auth_type

- содержит способ аутентификации (идентификации) пользователя на сервере.

Способы аутентификации:

  1. Guest (с минимальными правами). Характерен тем, что имя и пароль пользователя не фиксируется и не определяется.
  2. Базовая аутентификация. Каждый пользователь имеет свое уникальное имя и пароль, которые передаются в незашифрованном виде.
  3. Аутентификация с кодирование информации.

!!! Все переменные строковые.

Content_length

переменная содержит длину посылки в байтах.
Имя_поля_формы, значение_поля_формы - из этих переменных считываем количество символов (байт).

Request_method

- переменная содержит способ (метод) с помощью которого были отправлены данные формы. Методы: "GET", "POST". Эти константы должны быть написаны заглавными буквами.
Request_method="MAILTO"
	"HEAD"
	"PUT"

Метод "GET"

При передаче данных методом "GET", длина строки не может превышать 255 символов, данные передаются в явном виде и приписываются к строке адреса.
"GET"?name=value&name=value
Например, при обращении к своему почтовому ящику на Rambler в строке адреса вы видите:
http://banners.rambler.ru:8080/i.ban?pg=457&ifr=1
плюсы: простота и быстрота обработки
минусы: т.к. данные в явном текстовом виде, нельзя передавать пароль.

Метод "POST"

Объем передаваемых данных не ограничен.
Данные, передаваемые методом "POST", передаются в шестнадцатиричном байтовом коде, аналогично тому как передаются сообщения электронной почты (аналогично кодировке электронной почты).

Query_string

- содержит строку данных, которые были переданы методом "GET" (все, что после знака ?, целиком просто как строка).
Для метода "POST" такой переменной не существует, нужно считывать посимвольно (побайтно).

Remote_addr

- содержит физический IP-адрес пользователя, обратившегося к серверу (например, 255.12.121.2)

Remote_host

В переменной содержится адрес того компьютера, с которого вы обратились к серверу.

Remute_ident

Переменная содержит имя пользователя, под которым он зарегистрирован на сервере (логин).

Remote_user

устанавливает истинное имя пользователя, которое зарегистрировано на сервере.

Server_name

содержит имя сервера (с которого передан запрос).

Server_port

содержит номер порта, через который осуществляется обмен данными.
HTTP-протокол по умолчанию работает через 80-й порт (это участок памяти).
POP3 - 23 (обычно по 23 порту, это все настраиваемые вещи).
FTP -81.
http://mail.ru:8080 если порт не по умолчанию, то нужно указать номер порта в адресе.

Server_path

- в этой переменной содержится полный путь (локальный, в пределах сервера) к файлу, содержащему CGI-программу.

Script_alias

- содержит имя виртуальной директории, в которой хранятся файлы скриптов.

[ Home ] [ Top ] [ Web-дизайн ] [ Web-мастеринг ] [ Статьи, обзоры ] [ Литература ] [ Ссылки ]
[ Страничка юмора ] [ Гостевая книга ] [ E-Mail ]

ЦКО при МГТУ им.Н.Э.Баумана
Hosted by uCoz