FastCGI, SCGI, - php, c, cgi, fastcgi

Аз пиша уеб сървър в C и трябва да намеря начин да използвам CGI за изпълнение на динамично съдържание от страна на сървъра.

Аз гледам на протокола FastCGI и изглежда досаден, Това ми напомня за битката, която трябваше да направя в клас, когато преобразувах ASCII в utf-8 и обратно (което тогава изглеждаше безполезно, но може би не ...

Намерих голяма библиотека, написана на PHP, където можех просто да стартирам php-cgi -b localhost:8888 и започнете да общувате с него. Очевидно бих искал това на C.

Аз ще го оценявам, ако някой може да намери библиотека (за FastCGI клиенти!). Ако не, тогава аз съм добре да съдействам на общността с отворен код, като я пиша.

Също така, как точно да използвам SCGI? Едва ли има някаква документация за него (която все пак мога да намеря) Какъв гнездо да свържа?


Също, php-cgi е само за PHP, как работят нещата за Perl, Python и т.н.?

Благодаря отново.

Отговори:

5 за отговор № 1

mario каза (в коментарите на въпроса):

  • Има няколко библиотеки, споменати на началната страница на 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 в техните работещи модели. Много е лесно да се сбърка с една друга. За щастие, изглежда, че Preetam е поискал FCGI и SCGI.