Andreas Korthaus: FastCGI

Beitrag lesen

Hallo!

aus der ${php_sourcen_pfad}/sapi/cgi/README.FastCGI:

In this setup, PHP is started as a separate process entirely from the web server. It will listen on a socket for new FastCGI requests, and deliver PHP pages as appropriate. This is the recommended way of running PHP-FastCGI.

[...]

You must also configure your web server to connect to the appropriate port in order to talk to the PHP FastCGI process.

Nun interessiert mich, wie das Protokoll zwischen dem so erstelltem Interpreter-Dämon PHP und einem Client auszusehen hat.

Ich weiß nicht ob Du das richtig verstanden hast. Das FastCGI-Protokoll wird nicht zwischen PHP-Binary und User-Agent (Browser) "gesprochen", sondern zwischen Webserver und PHP-Binary. Es laufen dann halt meist mehrere Dämon-Prozesse (PHP), die über TCP/IP mit dem Webserver kommunizieren (können dank TCP/IP auch auf mehreren anderen Servern liegen...). Browser und Webserver kommunizieren weiterhin ganz normal über HTTP. PHP-Scripte müssen auch nicht für FastCGI umgeschrieben werden, weil PHP sich darum kümmert, dass die Script wie bei CGI oder mod_php abgearbeitet werden.

lighttpd z.B. verwendet PHP meist über FastCGI, ist sehr einfach zu konfigurieren und funktioniert wunderbar und sehr schnell. Hat halt den Vorteil dass man nicht wie bei CGI den PHP-Interpreter bei jedem Scriptaufruf neu laden muss, und auf der anderen Seite nur eine vom Webserver unabhängig festgelegte Anzahl Dämon-Prozesse hat, und nicht als Modul in jedem Webserver-Prozess.

Kann das gerade in der Kombination mit lighttpd nur empfehlen!

Wenn könnte man fragen?

google? ;-)

Wo gibt es möglicherweise Links?

http://www.fastcgi.com/

Vielleicht helfen auch noch folgende Links:
http://lighttpd.net/documentation/fastcgi.html
http://www.debianhowto.de/howto-archiv/de/apache2-phpfcgi-sarge/c_apache2-phpfcgi-sarge.html

Grüße
Andreas

--
SELFHTML Feature Artikel: http://aktuell.de.selfhtml.org/artikel/