Глава 25. CGI-скрипты___________________________________587

фикатор ресурса), версия протокола и, наконец, MIME-сообщение. Сервер отвечает на запрос своим собственным сообщением, которое обычно включает версию протокола сервера, код статуса, а также другое MIME-сообщение.

Основная часть процесса общения клиент/сервер автоматически осуществляется под управлением WWW-приложения клиента (обычно это Web-браузер)и сервера. Это значительно облегчает работу, так как отпадает необходимость форматирования каждого сообщения для доступа к серверу и получения информации. Единственное, что необходимо, это иметь WWW-клиента. Однако для того, чтобы писать свои собственные CGI-скрипты, необходимо знать правила форматирования строки, содержащей MIME-тип. Эти сведения нужны для определения типа файла, посылаемого скриптом. Также необходимо знать, как получить доступ к системным переменным сервера, чтобы использовать эту информацию в своих CGI-скриптах. В следующем разделе будет изложено все необходимое для решения этих задач.

Примечание)

Если вы решили написать свою собственную программу-клиент, то необходимо заранее разобраться в деталях коммуникационного процесса клиент/сервер. Начать изучение этого вопроса можно, обратившись к документам библиотеки W3 http://www.w3.org/pub/WWW/Library/.

Использование MIME-типа выходного заголовка

Каждый документ, посылаемый CGI-скриптом серверу, как созданный скриптом "на лету", так и просто передаваемый скриптом без изменений, должен содержат выходной заголовок(output header), отражающий тип содержимого файла. В табл. 25.1 приведены примеры некоторых наиболее часто используемых MIME-типов файлов с соответствующими расширениями.

Таблица 25.1

MIME-тип

Расширения

application/octet-stream

bin exe

texVhtml

html htm

text/plain

txt

text/richtext

rtx

video/mpeg

mpeg mpg mpe

video/quicktime

qt mov

video/x-msvideo

avi


Для того чтобы помочь вам лучше понять, как правильно использовать MIME-ТИПЫ в CGI-скриптах, рассмотрим пример. Предположим, что вы