Глава 19: СGІ-программирование.
19.3 Простейшая CGI-программа
Вот исходный код вашей первой CGI-программы. Она настолько проста, что в ней даже не пришлось использовать модуль CGI.pm:
#!/usr/bin/perl -w
#самая легкая из CGI-програми
print :END_of_Multiple_Text;
Content-type: text/html
<HTML>
<HEAD>
<TITLE>Hello World</TITLE>
</HEAD>
<BODY>
<Hl>Greetings, Terrans!</Hl>
</BODY </HTML>
END_of_Multiline_Text
Каждый раз, когда эта программа вызывается, она выдает на экран одно и то же. Это, конечно, не особенно интересно, но позднее мы сделаем ее более занимательной.
эта программка содержит всего один оператор: вызов функции print. Несколько забавно выглядящий аргумент — это так называемый here-документ. Он состоит из двух знаков "меньше чем" и слова, которое мы назовем конечной лексемой. Для программыста, работающего с shell, написанное, возможно, будет похоже на переадресацию ввода-вывода, но на самом деле это просто удобный способ взятия в кавычки строкового значения, занимающего несколько строк. Это строковее значение начинается на следующей строке программы и продолжается до строки, содержащей конечную лексему, которая должна стоять в самом начале этой строки; ничего другого в этой строке быть не должно. Неге-документы особенно полезны для создания HTML-документов.
Первая часть этого строкового значения — определенно самая важная:
строка Content-Type задает тип генерируемой выходной информации. Сразу за ней идет пустая строка, которая не должна содержать пробелов и знаков табуляции.
У большинства новичков первые CGI-программы отказываются работать, потому что пользователи забывают об этой пустой строке, отделяющей заголовок (нечто вроде заголовка сообщения электронной почты) от следующего за ним необязательного тела*. После пустой строки следует HTML-документ, посылаемый в броузер пользователя, где он форматируется и отображается.
Сначала добейтесь, чтобы ваша программа правильно выполнялась при вызове ее из командной строки. Это необходимый, но не достаточный шаг для того, чтобы обеспечить функционирование вашей программы как сценария, работающего на сервере. Ошибки могут возникать и в других местах программы;
см. ниже раздел "Поиск и устранение ошибок в CGI-программах".
Если программа должным образом работает при вызове ее из командной строки, необходимо инсталлировать ее на компьютере-сервере. Приемлемые места размещения зависят от сервера, хотя для CGI-сценариев часто используется каталог /usr/etc/httpd/cgi-bin/ и его подкаталоги. Обсудите этот вопрос с Web-мастером или системным администратором.
После завершення инсталляции вашей программы в CGI-каталоге ее можно выполнять, указывая броузеру ее путевое имя в составе URL. Например, если ваша программа называется howdy, URL будет выглядеть так:
http://vww.SOMEWHERE.org/cgi-bin/howdy.
Сервери обычно позволяют использовать вместо ддинных путевых имен псевдонимы. Сервер, имеющий адрес www.SOMEWHERE.org, может запросто перевести cgi-bin/howdy, содержащийся в этом URL, в нечто вроде usr/etc/httpd/cgi-bin/howdy . Ваш системний администратор или Web-мастер может подсказать, какой псевдоним следует использовать при обращении к вашей программе.
* Этот заголовок необходим для протокола HTTP, о котором мы упоминали выше.
Назад | Вперед
Содержание (общее) | Содержание раздела
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|