Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Документация, учебники по Perl.doc
Скачиваний:
3
Добавлен:
29.10.2018
Размер:
1.83 Mб
Скачать

Немного о cgi

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

  1.  Получение данных от клиента.

  2.  Обработка данных.

  3.  Выдача ответа клиенту.

Прием данных от клиента Взаимодействие с клиентом обеспечивается так: он заполняет форму своими значениями, нажимает на кнопку submit, броузер кодирует данные соответствующим образом и отправляет их серверу. Выдача данных клиенту Обычно клиенту выдают текст в формате HTML (ничто не мешает вам отправить ему и картинку/видео). Для того чтобы сервер и клиент вас поняли, необходимо сказать, что вы выдаете c помощью заголовка Content-Type: mime-type/mime-subtype. Пример: print "Content-Type: text/html\n"; # Мы выдаем текст в формате HTML. # Также можно: text/plain - простой текст, # в браузере отобразится аналогично тексту, # заключенному между тегами # <pre></pre>. image/gif - Картинка, формат gif # video/mpeg - mpeg-видео. И целая куча других # форматов, см. файл mime.types из apache print "\n"; # <- еще одна пустая строка, обозначает # конец вывода наших заголовков. # Теперь мы можем написать свой текст клиенту print qq{ <html> <head> <title>Моя первая CGI программа</title> </head> <body> <h1>Моя первая CGI программа</h1> </body> </head> };

"Да, но я только начал изучать Perl", - скажете вы. Не беда! Для того чтобы наладить работу скриптов на вашем сайте, глубокого знания языка программирования не требуется. В Сети лежит просто немереное количество абсолютно бесплатных скриптов на любой вкус: от гостевых книг до сложных баз данных. Все, что вам нужно, хотя бы начальные знания английского языка. Скачать любой скрипт можно с сайта www.cgi-resources.com. Это специализированный каталог, содержащий ссылки на тысячи скриптов на самых разных языках программирования.

Предположим, вы решили использовать скачанный из Сети скрипт. Чтобы он у вас нормально работал, нужно сделать следующее:

В начале скрипта указываются некоторые данные, необходимые для его запуска, например путь к интерпретатору Perl (обычно /usr/local/bin/perl/ или просто /usr/bin/perl/), URL вашего сайта, имя файла, в который будут записываться результаты выполнения скрипта и т. п. Все строки, которые следует заменить, обычно выделены комментариями, так что вы их легко найдете.

Символы, используемые при операциях с файлами

Знак

Функция

Совместим с

Несовместим с

<

Открытие для чтения. Если файла нет - возникает ошибка

<

> и <

>

Создание файла для записи. Чтение также возможно

> и +

<

+

Открытие для чтения/записи

> и <

Нет

Возможны также следующие комбинации:

Комбинация

Функция

<+

Открыть для чтения/записи. При отсутствии файла возникает ошибка

+>

Создать файл для чтения/записи. Если файл существует - его содержимое теряется

>>

Открыть или создать для дополнения

+>>

Открыть или создать для чтения/записи

В зависимости от конфигурации Web-сервера имя скрипта должно иметь определенное расширение и/или он должен находиться в определенном каталоге. Например, имя скрипта должно иметь расширение .cgi, и скрипт должен лежать в каталоге cgi-bin. Проконсультируйтесь у администратора вашего сервера обо всех предъявляемых требованиях.

Поскольку скрипт - это программа, нужно присвоить ему атрибут "исполняемый".

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

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