FastCGI, SCGI, - PullRequest
       18

FastCGI, SCGI,

6 голосов
/ 19 апреля 2011

Я пишу веб-сервер на C, и мне нужно найти способ использовать CGI для выполнения динамического контента на стороне сервера.

Я смотрю на протокол FastCGI, и он выглядит раздражающим . Это напоминает мне о том немногое, что я должен был сделать в классе, когда я конвертировал ASCII в UTF-8 и обратно (тогда это казалось бесполезным, но, возможно, это не было ...)

Я нашел отличную библиотеку, написанную на PHP, где я мог бы просто запустить php-cgi -b localhost:8888 и начать с ней общаться. Очевидно, я бы хотел это в C.

Буду признателен, если кто-нибудь найдет библиотеку (для клиентов FastCGI ! ). Если нет, тогда я в порядке с участием в сообществе открытого исходного кода, написав один.

Кроме того, как именно я использую SCGI? Там почти нет документации (что я могу найти, во всяком случае). К какому разъему я подключаюсь? Куда мне отправлять запросы?


Кроме того, php-cgi только для PHP, так как все это работает для Perl, Python и т. Д.?

Еще раз спасибо.

1 Ответ

5 голосов
/ 14 мая 2011

Марио сказал (в комментариях к вопросу):

  • На домашней странице FastCGI упоминается несколько библиотек. http://fastcgi.com/drupal/node/5. В комплект разработчика должен входить сервер.
  • Также включена реализация клиента для. http://fastcgi.com/devkit/doc/fcgi-devel-kit.htm
  • SCGI http://python.ca/scgi/protocol.txt чрезвычайно просто реализовать даже без ссылочного кода.
  • Вам нужен клиент SCGI, который работает как deamon и принимает подключения к сокету через согласованный порт (4000 или 5000 кажутся общими).
  • SCGI ничем не отличается от FastCGI. Каждый язык потребует своего собственного демона, вы можете запустить несколько. И принимать запросы CGI - это почти то, что они делают. Единственная разница - это сокет и формат заголовка вместо CGI-stdin pipe и переменных env.

К этому я хотел бы добавить: CGI (именно это и требует вопрос) отличается от FCGI и SCGI в своих рабочих моделях. Это довольно легко принять одну за других. К счастью, похоже, что Притам попросил FCGI и SCGI.

...