Русскоязычные документы веб-мастеру готовы к употреблению
Где вы зарабатываете больше всего?
Яндекс.Директ
Google Adsens
Sape
Begun
Setlinks
Mainlinks
Blogun

Сегодня такие вещи как гостевая книга, поиск по серверу, форма для отправки сообщений - неотъемлемый атрибут практически любого серьезного сайта. Проблема внедрения этих и других прибамбасов, разумеется, всячески возбуждает воображение начинающего вебмастера, лишая его сна, аппетита и тяги к пиву. К сожалению, изучение HTML-исходников страниц конкурентов ничего, кроме ссылок на некий "cgi-bin", не дает, да еще в телеконференциях иногда встречается упоминание о каких-то cgi-скриптах. Эта сатья и посвящена основам использования этих самых cgi-скриптов во славу и процветание вашего сайта.

Для начала, думаю, надо разобраться с понятиями (вообще разборки и понятия - сегодня очень актульно :-)). CGI-скрипт - это программа, которая выполняется на Web-сервере по запросу клиента (то есть посетителя Web-сайта). Программа эта принципиально ничем не отличается от обычных программ, которые установлены на вашем компьютере - будь то MS Word или игра Quake. CGI - это не язык программирования, на котором написан скрипт, а Common Gateway Interface - специальный интерфейс, с помощью которого и происходит запуск скрипта и взаимодействие с ним.

Правда есть один довольно неприятный момент. На сервере, где находится ваш сайт, должно быть разрешено выполнение cgi-скриптов. Дело в том, что скрипт, как и любая другая программа, может выполнять системные команды на сервере, что представляет потенциальную угрозу безопасности. Как сказал один мой знакомый админ: "Одними cgi-скриптами я могу взломать систему за 5 минут". Так что если вы разместили свой сайт на бесплатном сервере, например, Xoom или Chat.Ru, то вы не сможете запускать скрипты. Впрочем, некоторые бесплатные сервера допускают использование CGI, например, I-Connect. Ну, а если вы платите за размещение страницы, то, как правило, использование cgi-скриптов разрешено (если нет - то и платить провайдеру за поддержку страницы, на мой взгляд, не стоит).

Как работает CGI-скрипт? Я, конечно, могу процитировать какое-нибудь техническое руководство, но пользы от этого будет мало. Поэтому расскажу, как все происходит, своими словами. Итак, посетитель вашей страницы заполняет поля формы, например, для записи в гостевую книгу. После этого он нажимает кнопку "Submit", которая и запускает cgi-скрипт. Скрипт выполняет запрограммированные действия - в данном случае считывает данные из формы и пишет их в файл гостевой книги - и посылает в броузер посетителя обычный HTML-код, например, сообщение "Спасибо, что вы оставили запись в гостевой книге".

Преимуществ CGI-скриптов перед JavaScript и Java на мой взгляд, три, и они весьма значительны:

  • так как программа выполняется сервером, нет никакого значения, какой у посетителя броузер - древний Lynx или новейший Internet Explorer. Нет никаких глюков и сообщений об ошибках;

  • cgi-скрипты позволяют реализовать гораздо более широкий набор функций;

  • код cgi-скрипта закрыт для конкурентов :-)

На каком же языке может быть написана CGI-программа? Ответ вас приятно удивит: практически на любом. Главное, чтобы сервер мог выполнить эту программу, то есть на сервере должен быть установлен компилятор или интерпертатор соответствующего языка программирования. Для систем на базе Unix это обычно C/С++, Perl, Shell; для серверов под управлением Windows NT - те же Perl, С/С++ и любая Windows-система программирования, поддерживающая написание cgi-приложений, например, Visual Basic или Delphi.

Лично я предпочитаю язык Perl. Он является интерпретируемым, то есть программы на Perl не требуют компиляции. Это очень удобно: вы отлаживаете программу на своей домашней машине (где, к примеру, установлена Windows), а затем просто копируете ее на сервер (где, скорее всего, установлен один из клонов Unix - FreeBSD, Linux, Sun Solaris, HP-UX и т.п.). При смене провайдера проблем с переносом скриптов также не будет.

Если же вы решите использовать компилятор, например, C/C++, то вам нужно будет компилировать исходный текст программы на сервере, для чего необходим telnet-доступ к серверу, который провайдеры давать очень не любят.

"Да, но я не знаю Perl" - скажете вы. Ха! Для того, чтобы наладить работу скриптов на вашем сайте, знания языка программирования особенно не нужно. В Сети лежит просто немеренное количество абсолютно бесплатных скриптов на любой вкус - от гостевых книг до сложных баз данных. Все, что вам нужно - хотя бы начальные знания английского языка. Скачать любой скрипт можно с сайта CGI-Resources.Com. Это специализированный каталог, содержащий ссылки на тысячи скриптов на самых разных языках программирования.

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

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

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

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

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


Комментарии

Имя 

 

[15.10.08] Урок фотошоп Рисование фракталов

[14.10.08] Плагины для Photoshop Добавлено парочку новых.

[13.10.08] Пиксельные шрифты Добавлено 11 шрифтов.

[10.10.08] Урок фотошопа Как нарисовать дерево.

[05.10.08] JavaScript Новая документация.

[03.10.08] Plug-ins Пару новых плагинов для фотошопа.

[01.10.08] Урок фотошопа Старая фотография.

[01.10.08] Урок фотошопа Сказочный текст.

[30.09.08] PERL статьи 3 новых интересных статьи.

[30.09.08] PHP статьи Полосатая таблица.

[29.09.08] WEB документация На сайте появились учебники и книги.

[18.09.08] Урок Фотошопа Ледяной текст 2.

[16.09.08] Урок Фотошопа Mp3 Player.

[15.09.08] Урок Фотошопа Огненный текст.

Все новости
Рейтинг@Mail.ru
Александр Акимов
ICQ:
Mail: odvd@ya.ru