最近在使用vagrant搭建php的开发环境。 其中在搭建调试过程中,发现了很多问题(毕竟之前一直在用集成开发环境,一键安装搞定。。)。 进而调查了下CGI FastCGI 与 PHP-FPM 现总结如下:
Was genau haben Sie erlebt, als Sie über einen Browser auf index.php zugegriffen haben?
Ist es nach dem Lesen dieses Bildes etwas klarer? Lassen Sie es uns weiter unten im Detail erklären.
Wenn Sie die URL-Adresse eingeben, um auf index.php zuzugreifen, sendet Ihr Browser (Client) eine Anfrage an Ihren Server (Nginx, Apache usw.), aber der Server kann nur statische Ressourcen wie HTML verarbeiten Da dynamische Ressourcen wie PHP und JSP nicht vom Server verarbeitet werden können, ist für die Verarbeitung ein bestimmter Parser erforderlich. Wie kommunizieren (Kontakt) der Server und der Parser? CGI wird verwendet. Nach der Kommunikation muss PHP-FPM zum Parsen der PHP-Datei verwendet werden, und der Server kehrt zum Browser (Client) zurück Damit ist der Anfragevorgang abgeschlossen.
Also:
CGI ist ein Protokoll für den Datenaustausch zwischen Webserver und Webanwendung.
FastCGI: Wie CGI ist es ein Kommunikationsprotokoll, weist jedoch einige Effizienzoptimierungen auf als CGI.
PHP-CGI: Es ist das Schnittstellenprogramm von PHP (Webanwendung) zum vom Webserver bereitgestellten CGI-Protokoll.
PHP-FPM: Es handelt sich um ein Schnittstellenprogramm für das FastCGI-Protokoll, das von PHP (Webanwendung) für den Webserver bereitgestellt wird. Es bietet auch eine relativ intelligente Aufgabenverwaltung.
Referenzmaterialien
Veranschaulichung der Beziehung zwischen CGI, FastCGI und PHP-FPM
Verwandte Empfehlungen:
php-fpm - Wie kann ich den Konfigurationsdateipfad für die Ausführung von php_fpm anzeigen?
Das obige ist der detaillierte Inhalt vonWelche Beziehung besteht zwischen CGI, FastCGI und PHP_FPM?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!