Anpassen der nginx-Einstellungen für virtuelle Hosts

Standardmäßig arbeitet der Apache-Webserver mit nginx zusammen. Die Vorteile daran sind, dass Webpages schneller geladen werden und Serverressourcen gespart werden. Nähere Informationen dazu, wie Apache und nginx standardmäßig zusammenarbeiten finden Sie im Abschnitt Apache mit nginx.

Die Standardarbeitsweise zwischen Apache und nginx können Sie für jede beliebige Website ändern. Sie können Folgendes konfigurieren:

  • Legen Sie fest, ob nginx als Proxy für Apache agieren soll oder als unabhängiger Server für die Verarbeitung von HTTP-Anforderungen an Websites.
  • Geben Sie an, welcher Webinhalt (statisch oder dynamisch) von welchem Server verarbeitet werden soll, wenn nginx als Proxy verwendet wird.

Mit diesen Einstellungen können Sie die Leistung besonders ausgelasteter Webanwendungen optimieren, die viel dynamischen Inhalt (PHP-Dateien) oder viel statischen Inhalt enthalten.

Die entsprechenden Optionen finden Sie im Kunden-Panel unter Websites & Domains > <Domainname> > Einstellungen für Apache & nginx.

Bemerkung

Auf nginx bezogene Einstellungen sind nur verfügbar, wenn nginx eingeschaltet ist.

In den nachfolgenden Diagrammen sind alle möglichen Konfigurationen für die Zusammenarbeit von Apache und nginx zu sehen sowie die Vorteile und Nachteile jeder Konfiguration aufgeführt. Beachten Sie, dass Anforderungen Apache nicht erreichen, wenn Sie nur nginx verwenden.

Verarbeitung von statischem Inhalt

Die folgende Tabelle zeigt, wie je nach nginx-Konfiguration die Anforderung einer 2 KB großen GIF-Bilddatei in Plesk verarbeitet wird.

  image-71998.png  
Intelligente Bearbeitung statischer Dateien ist eingeschaltet image-71999.png

Dies ist die optimale Konfiguration in Bezug auf Leistung und Stabilität.

Die Abfrage wird an Apache geleitet, der lediglich einen Dateiablageort zurückgibt. Die Datei wird von nginx lokalisiert und übergeben.

Intelligente Bearbeitung statischer Dateien ist ausgeschaltet image-72000.png

nginx gibt Anforderungen und Antworten ohne Modifikation weiter. Dadurch kann der Modus zur Behebung von nginx-bezogenen Problemen verwendet werden.

Die Datei wird zweimal gesendet: von Apache zu nginx und von nginx zum Client. Dies kann die Leistung geringfügig mindern, insbesondere, wenn große Dateien gesendet werden.

Die GIF-Dateierweiterung ist in die Option „Statische Dateien direkt durch nginx bedienen“ inbegriffen image-72001.png

Dieser Modus verbessert die Leistung beim Senden statischer Dateien.

Beachten Sie jedoch: Da Abfragen niemals Apache erreichen, durchlaufen Sie auch nicht die Apache-Handler. Dies bedeutet, dass z.B. auch keine Rewrite-Regeln oder .htaccess-Anweisungen angewendet werden.

Verarbeitung von dynamischem Content

Die folgende Tabelle zeigt, wie je nach nginx-Konfiguration die Anforderung einer PHP-Datei in Plesk verarbeitet wird.

  image-71998.png  
PHP von nginx verarbeiten lassen ist ausgeschaltet image-72002.png

Dies ist die optimale Konfiguration in Bezug auf Leistung und Stabilität.

Die Anforderung wird an Apache geleitet, dort wird die Datei ausgeführt und das Ergebnis zurückgesendet.

Je nach Hosting-Einstellungen der Website verwendet Apache folgende Handler: FastCGI, CGI oder das Apache-Modul. Sie können aber auch die PHP-Version einzeln für jede Website wählen.

PHP von nginx verarbeiten lassen ist eingeschaltet image-72003.png

nginx selbst führt die Datei mithilfe des PHP-FPM-Handlers aus. Der PHP-FPM-Handler bietet erweiterte FastCGI-Features, was die Leistung von Webanwendungen, insbesondere solcher mit vielen Benutzern, verbessern kann.

Beachten Sie jedoch: Da Abfragen niemals Apache erreichen, durchlaufen Sie auch nicht die Apache-Handler. Dies bedeutet, dass einige Webanwendungen möglicherweise nicht wie erwartet funktionieren. Auch werden keine .htaccess-Anweisungen und Rewrite-Regeln für Apache angewendet.

Bemerkung

Damit die Option PHP von nginx verarbeiten lassen überhaupt verfügbar ist, muss die PHP-FPM-Unterstützung für nginx eingerichtet sein. Einzelheiten dazu, wie Sie die PHP-FPM-Unterstützung einrichten, finden Sie im Abschnitt PHP-Handler.

Einrichten zusätzlicher nginx-Anweisungen

Wenn Sie benutzerdefinierte nginx-Anweisungen für eine Website hinzufügen wollen, steht Ihnen hierfür das Feld Zusätzliche nginx-Anweisungen zur Verfügung. Beim Bearbeiten des Feldes ist die Syntax von nginx.conf zu verwenden. Beispiel: Wenn Sie alle über den Proxy gelaufenen Abfragen mit Gzip packen möchten, fügen Sie diese Zeile hinzu:

gzip_proxied any;

Beachten Sie bitte, dass Ihre Kunden das Feld Zusätzliche nginx-Anweisungen nicht sehen oder bearbeiten können.