Heim >Betrieb und Instandhaltung >Apache >Wie konfiguriere ich Apache so, dass ich mit MOD_PHP oder PHP-FPM mit PHP funktioniert?
Das Konfigurieren von Apache für die Arbeit mit PHP beinhaltet die Auswahl zwischen zwei primären Methoden: mod_php
und PHP-FPM (FASTCGI-Prozessmanager). mod_php
integriert PHP direkt in Apache als Modul, während PHP-FPM als separater Prozessmanager ausgeführt wird, der über eine FastCGI-Schnittstelle mit Apache kommuniziert.
Verwenden von Mod_Php: Dies ist der einfachere Ansatz, der weniger Konfiguration erfordert. Stellen Sie nach der Installation von PHP sicher, dass das Apache -Modul mod_php
aktiviert ist. Dies beinhaltet normalerweise entweder den Start von Apache nach der Installation oder das expliziten Aktivieren des Moduls mit dem Paketmanager Ihres Systems (z. B. a2enmod php7.4
auf Debian/Ubuntu -Systemen, wobei 7.4
Ihre PHP -Version darstellt). Apache wird die PHP -Verarbeitung automatisch für Dateien mit .php
-Erweiterungen verarbeitet. In der Regel ist keine weitere Konfiguration erforderlich, obwohl Sie möglicherweise die php.ini
-Datei für bestimmte Einstellungen anpassen müssen.
Verwenden von PHP-FPM: Diese Methode bietet eine bessere Leistung und Ressourcenverwaltung, insbesondere unter starker Belastung. Installieren Sie zuerst PHP-FPM. Anschließend müssen Sie Apache so konfigurieren, dass sie als FastCGI -Client fungieren. Dies beinhaltet das Hinzufügen eines Konfigurationsblocks in Ihrer Apache-Konfigurationsdatei (normalerweise unter /etc/apache2/sites-available/000-default.conf
oder einen ähnlichen Pfad, abhängig von Ihrem System). Dieser Block enthält in der Regel eine <location></location>
oder <directory></directory>
Anweisung, die den Speicherort Ihrer PHP-Dateien angibt und die Anweisung proxy_pass
verwendet, um Anforderungen an den PHP-FPM-Socket weiterzuleiten. Eine typische Konfiguration könnte so aussehen:
<code class="apache"><directory> Options Indexes FollowSymLinks AllowOverride All Require all granted <filesmatch> SetHandler "proxy:unix:/run/php/php7.4-fpm.sock|fcgi://localhost" </filesmatch> </directory></code>
Denken Sie daran, /run/php/php7.4-fpm.sock
mit dem tatsächlichen Pfad zu Ihrem PHP-FPM-Socket zu ersetzen und die Directory
so einzustellen, dass sie auf Ihr Web-Root verweisen. Starten Sie nach dem Konfigurieren von Apache es neu, damit die Änderungen wirksam werden. PHP-FPM sollte bereits ausgeführt werden. Wenn nicht, starten Sie es mit dem Init-System Ihres Systems (z. B. systemctl start php7.4-fpm
).
mod_php:
Vorteile:
Nachteile:
PHP-FPM:
Vorteile:
Nachteile:
Fehlerbehebungsprobleme hängen davon ab, ob Sie mod_php
oder PHP-FPM verwenden.
mod_php:
error.log
) auf bestimmte Fehlermeldungen. Zu den häufigen Ursachen gehören Syntaxfehler in Ihrem PHP -Code, fehlende PHP -Erweiterungen oder Erlaubnisprobleme.mod_php
aktiviert ist. Überprüfen Sie die Dateiberechtigungen in Ihren PHP -Dateien.php.ini
-Datei auf Konfigurationsprobleme.PHP-FPM:
/var/log/php-fpm/error.log
oder in einem ähnlichen Pfad). Dieses Protokoll enthält detailliertere Fehlermeldungen.Der Installations- und Aktivierungsvorgang hängt von Ihrem Betriebssystem und Ihrem Paketmanager ab.
Verwenden von Mod_Php:
apt-get install php7.4 libapache2-mod-php7.4
unter Debian/Ubuntu).mod_php
zu aktivieren (z. B. a2enmod php7.4
).systemctl restart apache2
).Verwenden Sie PHP-FPM:
apt-get install php7.4 php7.4-fpm
).<location></location>
oder <directory></directory>
hinzu.systemctl start php7.4-fpm
). Denken Sie daran, 7.4
durch Ihre tatsächliche PHP -Version zu ersetzen. Wenden Sie sich immer an die Dokumentation Ihrer Verteilung für die genauesten und aktuellsten Anweisungen.
Das obige ist der detaillierte Inhalt vonWie konfiguriere ich Apache so, dass ich mit MOD_PHP oder PHP-FPM mit PHP funktioniert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!