80 votes

Qu'est-ce que SAPI et quand l'utiliseriez-vous ?

J'ai récemment appris la gestion des erreurs en PHP et je suis tombé sur la fonction error_log() .

Dans le manuel PHP, il parle de tous les types de journaux d'erreurs et je les comprends tous, à l'exception du type 3 qui indique que le message d'erreur est envoyé directement au gestionnaire de journalisation SAPI. Ma question est qu'est-ce que SAPI exactement et quand voudriez-vous l'utiliser ?

65voto

Ignacio Vazquez-Abrams Points 312628

SAPI signifie "Server API" (et API signifie "Application Programming Interface"). C'est le mécanisme qui contrôle l'interaction entre le "monde extérieur" et le moteur PHP/Zend. Donc, vous voudriez toujours l'utiliser. En fait, vous ne pouvez pas éviter de l'utiliser sans beaucoup d'efforts puisque même la CLI est considérée comme une SAPI.

12voto

prosti Points 4630

Pour PHP, les SAPI disponibles sont : Apache2 (mod_php), FPM, CGI, FastCGI et CLI.

Discutable si l'API s'exécute sur le serveur, elle peut être appelée SAPI.

Permettez-moi de rappeler que FPM (FastCGI Process Manager) est très proche de l'implémentation PHP FastCGI avec quelques fonctionnalités supplémentaires (principalement) utiles pour les sites très chargés.

Aujourd'hui, du point de vue de la vitesse et de l'efficacité, le FPM serait le SAPI le plus évolué. Apache ou Nginx fonctionneront mieux en comparant les autres SAPI mentionnés.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X