Jak používat FastCGI s cFos Personal Net
FastCGI je vylepšení oproti CGI: Spuštění normálního skriptu CGI má spoustu režijních nákladů. Musí být vytvořen nový proces, musí být spuštěn interpret skriptu a skript musí být alespoň analyzován.
FastCGI většinu této režie eliminuje. Skript nebo aplikace FastCGI se spouští pouze jednou a poté komunikuje s webovým serverem pomocí speciálních zpráv FastCGI. Požadavky skriptu HTTP na tento skript a jejich odpovědi používají tyto zprávy. Proces zůstává neomezeně dlouho v paměti a skript musí být analyzován pouze jednou. To umožňuje provádění skriptů s mnohem menší režií.
Pro cFos Personal Net to také umožňuje použít Node.js pro programy Javascript (as ním jeden z nejrychlejších modulů Javascript).
Zde jsou kroky pro instalaci FastCGI s Node.js pro osobní síť cFos:
Nainstalujte a spusťte osobní síť cFos
Nainstalujte Node.js
Node-fastcgi "npm i node-fastcgi" spuštěním "npm i node-fastcgi" (nebo "npm i -global node-fastcgi")
Upravte ukázkový skript fcgi_test.fcgi v adresáři cFos Personal Net pub/fcgi
Otevřete v našem prohlížeči http://localhost/pub/fcgi/fcgi_test.fcgi
cFos Personal Net podporuje roli FastCGI "Responder", tj. aplikace / skript FastCGI je volán ke zpracování požadavku HTTP. Podporuje pouze konfiguraci, kde je spuštěn jeden skript FastCGI na požadovaný název souboru a požadavky jsou multiplexovány přes jedno připojení. Protože skripty FastCGI pracují velmi podobně jako běžné skripty CGI, obvykle používají pro komunikaci s webovým serverem STDIN / STDOUT. Tato konfigurace má proto největší smysl.
Pro usnadnění vývoje vlastních skriptů FastCGI (např. U Node.js) jsou chyby skriptů přesměrovány do prohlížeče. Také: Při vývoji skriptu nemusíte restartovat webový server, když změníte skript. Stačí zabít proces interpretu skriptu. cFos Personal Net znovu načte (novou verzi) skriptu, když to bude potřeba v dalším požadavku.
Reference
Specifikace FastCGI
https://github.com/fast-cgi/spec/blob/master/spec.md
FastCGI na Wikipedii
https://en.wikipedia.org/wiki/FastCGI
Node.js
https://nodejs.org/en/
Modul Node.js pro FastCGI
https://www.npmjs.com/package/node-fastcgi
Skripty FastCGI
Dokumentace skriptovacích funkcí FastCGI osobní sítě cFos