Beim Durchlaufen eines Zend-Tutorials bin ich auf folgende Aussage gestoßen:
Beachten Sie, dass die php_flag-Einstellungen in .htaccess nur funktionieren, wenn Sie mod_php verwenden.
Kann jemand erklären, was das bedeutet?
Beim Durchlaufen eines Zend-Tutorials bin ich auf folgende Aussage gestoßen:
Beachten Sie, dass die php_flag-Einstellungen in .htaccess nur funktionieren, wenn Sie mod_php verwenden.
Kann jemand erklären, was das bedeutet?
mod_php
bedeutet PHP als Apache-Modul .
Grundsätzlich mod_php
ermöglicht es Apache beim Laden als Apache-Modul, PHP-Dateien zu interpretieren (diese werden von interpretiert mod_php
) .
BEARBEITEN: Bei der Arbeit mit Apache gibt es (mindestens) zwei Möglichkeiten, PHP auszuführen:
mod_php
) : Der PHP-Interpreter ist dann irgendwie in den Apache-Prozess "eingebettet": Es gibt keinen externen PHP-Prozess - was bedeutet, dass Apache und PHP besser kommunizieren können .
Und nach dem Kommentar erneut bearbeiten : Verwenden von CGI oder mod_php
liegt bei Ihnen: Es ist nur eine Frage der Konfiguration Ihres Webservers.
Um zu wissen, welcher Weg derzeit auf Ihrem Server verwendet wird, können Sie die Ausgabe von überprüfen phpinfo()
: Es sollte etwas geben, das angibt, ob PHP über mod_php
(oder mod_php5
) oder über CGI ausgeführt wird.
Vielleicht möchten Sie auch einen Blick auf die php_sapi_name()
Funktion werfen : Sie gibt den Schnittstellentyp zwischen Webserver und PHP zurück .
Wenn Sie bei der Verwendung die Konfigurationsdateien Ihres Apache einchecken mod_php
, sollte eine LoadModule
Zeile wie folgt aussehen:
LoadModule php5_module modules/libphp5.so
(Der Dateiname auf der rechten Seite kann unterschiedlich sein - unter Windows sollte es beispielsweise a sein. .dll
)
mod_php
ist bei weitem die häufigste Konfiguration.mod_php
ist nicht echtes PHP; Es ist nur ein Apache-Addon. Oder besser gesagt, ich denke, Sie sollten die Antwort mit einer Definition von Was genau bedeutet PHP beginnen?Diese Antwort stammt von TuxRadar :
quelle
Auf Ihrem Server müssen die PHP-Module installiert sein, damit er PHP-Code analysieren kann.
Wenn Sie auf Ubuntu sind, können Sie dies einfach mit tun
Andernfalls können Sie Apache mit PHP kompilieren: http://dan.drydog.com/apache2php.html
Wenn Sie Ihr Server-Betriebssystem angeben, können andere Personen genauer antworten.
quelle
Dies bedeutet, dass Sie PHP als Modul in Apache installiert haben müssen, anstatt es als CGI-Skript zu starten.
quelle
Nur um diese Antworten hinzuzufügen, ist mod_php die älteste und langsamste Methode, die auf dem HTTPD-Server zur Verwendung von PHP verfügbar ist. Es wird nicht empfohlen, es sei denn, Sie verwenden alte Versionen von Apache HTTPD und PHP. php-fpm und proxy_cgi sind die bevorzugten Methoden.
quelle
mod_php ist ein PHP-Interpreter.
Ein wichtiger Haken von mod_php in der Dokumentation ist:
"mod_php ist nicht threadsicher und zwingt Sie, sich an die Prefork-MPM (Multi-Prozess, keine Threads) zu halten, die die langsamstmögliche Konfiguration darstellt."
quelle