Аз пиша уеб сървър в C и трябва да намеря начин да използвам CGI за изпълнение на динамично съдържание от страна на сървъра.
Аз гледам на протокола FastCGI и изглежда досаден, Това ми напомня за битката, която трябваше да направя в клас, когато преобразувах ASCII в utf-8 и обратно (което тогава изглеждаше безполезно, но може би не ...
Намерих голяма библиотека, написана на PHP, където можех просто да стартирам php-cgi -b localhost:8888
и започнете да общувате с него. Очевидно бих искал това на C.
Аз ще го оценявам, ако някой може да намери библиотека (за FastCGI клиенти!). Ако не, тогава аз съм добре да съдействам на общността с отворен код, като я пиша.
Също така, как точно да използвам SCGI? Едва ли има някаква документация за него (която все пак мога да намеря) Какъв гнездо да свържа?
Също, php-cgi
е само за PHP, как работят нещата за Perl, Python и т.н.?
Благодаря отново.
Отговори:
5 за отговор № 1mario каза (в коментарите на въпроса):
- Има няколко библиотеки, споменати на началната страница на 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.