nginx und fastcgi: ein Hochleistungs-PHP-Setup
Ausführen von PHP -Anwendungen mit Nginx und FastCGI bietet erhebliche Leistungs- und Skalierbarkeitsvorteile gegenüber dem herkömmlichen Apache/mod_php -Ansatz. In diesem Handbuch wird diese Hochleistungsarchitektur auf Ubuntu-Server eingerichtet, wodurch die Effizienz von FastCGI und die Leistung von Nginx verwendet wird.
fastcgi: ein Leistungsschub
Die inhärente Overhead vonCGI, einen neuen Prozess für jede Anfrage zu erstellen, wird von FastCGI gemindert. Fastcgi behält anhaltende Prozesse bei und verringert die CPU und den Zeitverbrauch erheblich. Dies führt zu einer verbesserten Skalierbarkeit und allgemeinen Server -Effizienz. Das Bild unten zeigt einen typischen CGI -Prozess.
Installation und grundlegende Konfiguration
Installieren Sie PHP und Nginx: Verwenden Sie die erforderlichen Pakete:
sudo apt-get install php5-cli php5-fpm nginx
Konfigurieren Sie Nginx: Vermeiden Sie die direkte Bearbeitung der Standard -Nginx -Konfiguration. Erstellen Sie stattdessen eine Kopie:
cd /etc/nginx sudo rm sites-enabled/default sudo cp sites-available/default sites-available/my-default sudo ln -s /etc/nginx/sites-available/my-default sites-enabled/default
Aktivieren Sie FASTCGI: Die entsprechenden Zeilen in /etc/nginx/sites-available/my-default
, um PHP-Anforderungen an den FastCGI-Dienst (PHP5-FPM) zu leiten. Der entscheidende Abschnitt sollte Folgendes ähneln:
location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; }
starten nginx:
sudo service nginx start
Überprüfen Sie die Installation: create info.php
(enthält <?php phpinfo(); ?>
) im Web -Root (/usr/share/nginx/html
). Zugriff auf info.php
in Ihrem Browser sollte PHP -Informationen anzeigen und die Integration von Nginx und PHP über FASTCGI bestätigen. Die Server -API sollte "fpm/fastcgi" angezeigt.
Essentielle Konfigurationsverbesserungen
Web Root -Berechtigungen: Berechtigungen anpassen, um konstante sudo
Verwendung zu vermeiden:
sudo adduser <username> www-data sudo chgrp -R www-data /usr/share/nginx/html sudo chmod -R g+rw /usr/share/nginx/html sudo chmod g+s /usr/share/nginx/html
Nicht existierende Skripte verwandeln: Fügen Sie der Nginx-Konfiguration eine try_files
-Richtlinie hinzu, um die Sicherheit zu verbessern:
location ~ \.php$ { try_files $uri $uri/ =404; # ... other FastCGI directives ... }
Migration von Apache: Verwenden Sie Online -Konverter, um Apache -Direktiven (z. B. .htaccess
Regeln) in Nginx -Äquivalente zu übersetzen. Überprüfen Sie die konvertierte Konfiguration sorgfältig, bevor Sie sie implementieren.
Schlussfolgerung
Dieser Leitfaden bietet eine robuste Grundlage für die Einrichtung einer Hochleistungs-PHP-Umgebung mit Nginx und FastCGI. Wenn Sie diese Schritte befolgen und die empfohlenen Sicherheits- und Leistungsverbesserungen einbeziehen, können Sie einen skalierbaren und effizienten Webserver für Ihre PHP -Anwendungen erstellen. Denken Sie daran, immer die offizielle Dokumentation für NGINX und PHP für die aktuellsten Informationen und Best Practices zu konsultieren.
Das obige ist der detaillierte Inhalt vonEinrichten von PHP hinter Nginx mit FASTCGI. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!