Что такое CGI и что такое Сценарии CGI? [закрытый]

5
задан Dinesh Babu K G 2 January 2010 в 02:32
поделиться

2 ответа

G'day,

Веб-сервер, например, Apache, просто отправляет обратно статический контент - это ответ на запрос клиента на контент. Например, запрос на http://www.myserver.com/index.html обычно заставляет сервер открыть файл и вернуть содержимое файла, обернутого соответствующими http компонентами.

По сути, CGI - это метод динамической генерации таких веб-страниц с помощью других приложений, которые выполняются веб-сервером по мере необходимости.

Каталог cgi-bin обычно используется для размещения выполняемых скриптов.

Хотя он сильно сфокусирован на Perl Книга "CGI-программирование с помощью Perl" имеет отличное введение в CGI.

Правка: Как написано в комментариях ниже, "если PHP может позаботиться о динамическом содержимом, то зачем нужен CGI". Здесь есть несколько моментов.

  1. из коробки, PHP может быть довольно медленным. CGI, особенно в его mod_perl-стиле, или при использовании встроенных приложений на скомпилированных языках,
  2. PHP не очень хорошо справляется с ошибками, но это можно обработать,
  3. Я не думаю, что существует реальная поддержка ASP, Windows приложений или БД, и
  4. Безопасность PHP немного беспокоит, например, включение register_globals, и недостатки PHP очень хорошо известны.

Дизайн самого языка PHP также содержит много нестыковок, e. Например

  • довольно бесполезная объектная модель,
  • поиск довольно плохой,
  • несовместимые названия, и
  • плохая организация стандартной библиотеки.

Я считаю, что PHP5 идет долгий путь к улучшению этих моментов.

Хотя безопасность всегда является проблемой, с CGI реализацией вы можете свести к минимуму проблему безопасности хорошо разрекламированными способами.

HTH

cheers,

11
ответ дан 13 December 2019 в 05:36
поделиться

cgi-бин означает CGI-бинарник. Честно говоря, если вы уже знакомы с PHP, то, скорее всего, вам не нужны старомодные CGI-скрипты.

.
1
ответ дан 13 December 2019 в 05:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: