Einstellungen für Apache und nginx
Plesk verwendet standardmäßig den Apache Webserver (https://de.wikipedia.org/wiki/Apache_HTTP_Server), um die Seiten Ihrer Website an Clients zu senden (z. B. an Browser, über die Besucher auf Ihre Website zugreifen). Um eine bessere Leistung zu erreichen, wird Apache durch einen weiteren Webserver ergänzt: nginx. Sie können auch ausschließlich nginx verwenden.
Die Standard-Webserver-Einstellungen werden vom Serveradministrator (Hosting-Provider) angegeben. Zum Beispiel kann in diesen Einstellungen festgelegt werden, wie Webserver verschiedene Dateitypen verarbeiten, wie SSL/TLS verwendet wird oder wo Protokolldateien gespeichert werden.
Dennoch können Sie (als Website-Betreiber) benutzerdefinierte Webserver-Einstellungen für Ihre Website einrichten. So können Sie beispielsweise einen Indexdateityp hinzufügen, den Zugriff auf die Website einschränken usw.
Bemerkung: Sie können die Webserver-Einstellungen für Ihre Website anpassen, wenn Ihr Hosting-Abonnement die entsprechende Berechtigung gewährt.
Anpassen der Einstellungen für Apache und nginx
Bestimmte Einstellungen für Apache und nginx können auf Domainebene angepasst werden. Sie finden Sie unter Websites & Domains > Domainname > Einstellungen für Apache & nginx. Die Einstellungen sind in zwei Gruppen unterteilt:
-
Allgemeine Apache-Einstellungen
-
Einstellungen für nginx
Konfigurieren der MIME-Typen
Mit MIME-Typen werden Dateierweiterungen mit Dateitypen abgestimmt und Browser informiert, wie bestimmte Dateitypen gehandhabt werden sollen. Mit dem MIME-Typ
text/plain .txt
wird der Browser angewiesen, alle Dateien mit der Endung .txt
als Nur-Text zu behandeln. Die meisten häufig verwendeten MIME-Typen sind in der Regel schon vorkonfiguriert. Wenn Sie jedoch merken, dass die Seiten Ihrer Website nicht ordnungsgemäß von einem Webbrowser verarbeitet werden können, weil Sie nicht standardmäßige Dateierweiterungen verwenden, konfigurieren Sie einen oder mehrere personalisierte MIME-Typen.
So konfigurieren Sie personalisierte MIME-Typen:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie unter MIME-Typen das Optionsfeld Eigenen Wert eingeben aus.
- Geben Sie die gewünschten MIME-Typen ein oder löschen Sie nicht erwünschte Typen. Klicken Sie dann auf OK.
Konfigurieren von Apache-Handlern
Mit Apache-Handler kann festgelegt werden, wie Dateien mit bestimmten Erweiterungen im Webserver verarbeitet werden. Mit dem Handler
cgi-script .cgi
wird dem Webserver signalisiert, dass alle Dateien mit der Dateierweiterung .cgi
als CGI-Skripte gehandhabt werden sollen. In der Regel sind Handler für Dateien mit häufig verwendeten Erweiterungen bereits vorkonfiguriert. Wenn Sie jedoch ändern möchten, welcher Handler für die Verarbeitung einer bestimmten Erweiterung verwendet wird, müssen Sie einen oder mehrere Handler manuell konfigurieren.
So konfigurieren Sie personalisierte Handler:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie unter Handler das Optionsfeld Eigenen Wert eingeben aus.
- Geben Sie die gewünschten Handler ein oder löschen Sie nicht erwünschte Handler. Klicken Sie dann auf OK.
Einschränken des Zugriffs auf die Website
Sie können verhindern, dass bestimmte Nutzer auf Ihre Website zugreifen. Dabei haben Sie folgende Möglichkeiten zum Blockieren des Zugriffs:
- Individuelle IP-Adresse (zum Beispiel
192.168.1.110
) - IP-Adressensubnetz (zum Beispiel
127.0.0.1/8
) - Bestimmte Hostnamen (zum Beispiel
example.com
) - Alle (indem Sie das Zeichen „
*
“ verwenden)
Blockierte Nutzer erhalten die Fehlermeldung „403 Forbidden“, wenn sie versuchen, auf Ihre Website zuzugreifen.
So konfigurieren Sie den Zugriff auf Ihre Website:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie unter Zugriff auf Website verweigern das Optionsfeld Eigenen Wert eingeben aus.
- Geben Sie die IP-Adressen, Subnetze oder Hostnamen ein oder löschen Sie die Angaben.
- Wenn Sie ein Subnetz blockieren, jedoch einzelnen IP-Adressen darin den Zugriff auf die Website gestatten möchten, geben Sie diese im Feld Ausnahmen ein.
- Klicken Sie auf OK.
Konfigurieren von Indexdateien
Wenn ein Nutzer auf Ihrer Website ein Verzeichnis anstatt einer bestimmten Datei aufruft, zum Beispiel www.example.com
oder www.example.com/beispiel
anstatt www.example.com/index.html
, wird in Apache nach einer Indexdatei gesucht. Standardmäßig wird dabei in der angegebenen Reihenfolge nach den folgenden Dateien gesucht:
index.html
index.cgi
index.pl
index.php
index.xhtml
index.htm
index.shtml
Wenn alle sieben Dateien in einem Verzeichnis vorhanden sind, wird dem Nutzer die Datei index.html
gezeigt. Falls index.html
nicht vorhanden ist, wird nach der Datei index.cgi
gesucht usw. Wenn keine passende Indexdatei gefunden wird, wird standardmäßig der Fehler „403 Forbidden“ angezeigt.
Sie können in Plesk anpassen, welche Indexdateien gesucht werden, wenn ein Nutzer auf Ihrer Website ein Verzeichnis aufruft:
- Sie können die Reihenfolge ändern, mit der nach Indexdateien gesucht wird. So können Sie beispielsweise die Datei
index.php
stattindex.html
standardmäßig anzeigen. - Sie können Indexdateinamen zur Liste hinzufügen und daraus entfernen. Wenn die Standardseite Ihrer Website
hello.php
heißt, können Sie festlegen, dass diese standardmäßig von Apache ausgeliefert wird.
So konfigurieren Sie die Indexdateien:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie unter Indexdateien das Optionsfeld Eigenen Wert eingeben aus.
- Geben Sie den Namen der Indexdateien ein oder löschen Sie nicht gewünschte Namen. Legen Sie dabei außerdem die Reihenfolge fest, in der nach den Dateien gesucht werden soll. Klicken Sie dann auf OK.
Konfigurieren des Headers „Expires“
Über den Apache-Header expires
wird festgelegt, wie lange Kopien Ihres Webinhalts in Webbrowsern zwischengespeichert werden, bevor eine neue Anfrage an den Server gesendet wird. Wenn Sie diesen Header konfigurieren, können Sie die Serverauslastung verringern und Ihre Website beschleunigen.
Beispiel: Sie legen eine Gültigkeitsdauer von 10 Tagen fest. Ein Nutzer besucht ihre Website und die Seite index.html
wird angefordert. Im Webbrowser des Nutzers wird eine Kopie der Seite im Cache gespeichert. In den nächsten 10 Tagen wird dem Nutzer dann bei jedem Aufruf Ihrer Website die zwischengespeicherte Kopie angezeigt. Wenn die Seite am 11. Tag erneut aufgerufen wird, wird die Seite erneut vom Server abgefragt, da die im Cache gespeicherte Version abgelaufen ist.
Wenn Sie den Header expires
für Websites konfigurieren, auf denen dynamischer Inhalt zu finden ist, empfehlen wir, die Option response with Expires headers for static files only (Antwort mit dem Header „Expires“ nur für statische Dateien) auszuwählen. Andernfalls wird der Inhalt, inklusive dynamischer Inhalt, für die Gültigkeitsdauer im Browsercache des Nutzers gespeichert. Dies ist nicht empfehlenswert, da dynamischer Inhalt in der Regel häufig aktualisiert wird.
So konfigurieren Sie den Header „Expires“:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie unter Expires (Ablaufdatum) das Optionsfeld Eigenen Wert eingeben aus.
- Geben Sie die gewünschte Gültigkeitsdauer an. Es wird ein Zeitraum von 14 Tagen empfohlen.
- Wenn Sie dynamischen Inhalt auf Ihrer Website anbieten, vergewissern Sie sich, dass das Kontrollkästchen response with Expires headers for static files only (Antwort mit dem Header „Expires“ nur für statische Dateien) ausgewählt ist.
- Klicken Sie auf OK.
Bemerkung: Wenn nginx aktiviert ist, haben nur die über Apache bereitgestellten Dateien den Header „Expires“. Wenn das Kontrollkästchen Intelligente Bearbeitung statischer Dateien angeklickt ist, wird über die Standardkonfiguration von Apache und nginx festgelegt, welche Dateien als statisch angesehen werden. Falls das Kontrollkästchen Statische Dateien direkt durch nginx bedienen angeklickt ist und Dateierweiterungen angegeben wurden, werden nur Dateien mit diesen Erweiterungen über nginx bereitgestellt.
Konfigurieren zusätzlicher Header
Sie können zusätzliche Header für HTTP-Antworten konfigurieren. Verwenden Sie dazu das folgende Muster:
Name: Wert
HTTP-Antwortheader enthalten Informationen zur angeforderten Seite, mit denen Webbrowser angeleitet werden, bestimmte Aktionen durchzuführen. Mit dem folgenden Header schützen Sie Besucher Ihrer Website vor Clickjacking:
X-Frame-Options: DENY
So konfigurieren Sie zusätzliche Header:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie unter Additional headers (Zusätzliche Header) das Optionsfeld Eigenen Wert eingeben aus.
- Geben Sie die gewünschten Header ein oder löschen Sie nicht erwünschte Header. Klicken Sie dann auf OK.
Verhindern, dass symbolischen Verknüpfungen gefolgt wird
Standardmäßig kann mit Apache symbolischen Verknüpfungen gefolgt werden. Wenn auf Ihrer Website keine symbolischen Verknüpfungen vorhanden sind, sollten Sie diese Option deaktivieren, da sie ein Sicherheitsrisiko darstellen kann (obwohl das Risiko gering ist).
So verhindern Sie, dass in Apache symbolischen Verknüpfungen gefolgt wird:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Klicken Sie das Kontrollkästchen Fähigkeit, symbolischen Links zu folgen, einschränken an und klicken Sie dann auf OK.
Hosting nur mit nginx
In Plesk für Linux können Sie Websites mit einer Kombination aus nginx und PHP-FPM hosten. In diesem Fall werden Anfragen für Websites nicht an Apache übergeben, sondern von nginx gehandhabt. Das Hosting nur mit nginx ist eine gute Option für PHP-Websites, aber es ist auch für das Hosting von statischen Websites und Anwendungsservern geeignet. Sie können festlegen, dass einzelne Websites nur über nginx gehandhabt werden, ohne dafür Apache anzuhalten oder zu deaktivieren. Websites, die über Apache gehostet werden, sind damit nicht betroffen.
Bemerkung: Plesk Dienste (z. B. Webmail) sind vom Hosting nur mit nginx nicht betroffen. Für sie wird weiterhin Apache eingesetzt.
So aktivieren/deaktivieren Sie das Hosting nur für nginx für eine Domain:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Deaktivieren Sie im Abschnitt Einstellungen für nginx das Kontrollkästchen Proxymodus.
- Klicken Sie auf Anwenden.
Um für eine Domain wieder Apache und nginx zu verwenden, aktivieren Sie das Kontrollkästchen Proxymodus.
Bekannte Einschränkungen
Wenn Sie für eine Domain das Hosting nur über nginx durchführen, bestehen gewisse Einschränkungen:
- Filesharing ist nicht verfügbar.
- SSI, Perl und Python werden nicht unterstützt.
- Sie können nur den PHP-Handler „FPM-Anwendung bedient von nginx“ verwenden.
Konfiguration für die Bearbeitung von statischen Dateien
Standardmäßig ergänzen sich nginx und Apache auf Plesk für Linux-Servern. Über Apache wird dynamischer Inhalt bereitgestellt und nginx dient als Proxy für statische Inhalte. Mit dieser Struktur können die Serverressourcen optimiert werden und es kann schneller auf Anfragen an gehostete Websites reagieren werden. In Plesk können Sie jedoch festlegen, wie statischer Inhalt für Ihre Website gehandhabt werden soll.
Statischen Inhalt nur über nginx bereitstellen
Dies ist die Standardeinstellung für Plesk für Linux. Wenn eine Anfrage für statischen Inhalt eingeht, wird in Apache nur auf den Speicherort der Datei hingewiesen. Die Datei selbst wird dann jedoch über nginx gesucht und ausgeliefert.
So wird statischer Inhalt nur über nginx bereitgestellt:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx und scrollen Sie nach unten zum Abschnitt „nginx-Einstellungen“.
- Klicken Sie die Kontrollkästchen Proxymodus und Intelligente Bearbeitung statischer Dateien an.
- Das Kontrollkästchen Statische Dateien direkt durch nginx bedienen sollte nicht ausgewählt werden.
- Klicken Sie auf OK.
Nur Dateien mit bestimmten Erweiterungen über nginx bereitstellen
Sie können festlegen, dass nur Dateien mit bestimmten Dateierweiterungen als statischer Inhalt über nginx ausgeliefert werden. Andere Dateien, die in der Regel als statischer Inhalt eingestuft werden, werden über Apache bereitgestellt. Beachten Sie hierbei jedoch, dass die Dateien mit den angegebenen Erweiterungen Apache nie erreichen. Diese Dateien durchlaufen also auch nicht die Apache-Handler. Dies bedeutet zum Beispiel, dass Rewrite-Regeln oder .htaccess
-Anweisungen keine Anwendung finden.
So wird nur bestimmter statischer Inhalt über nginx bereitgestellt:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx und scrollen Sie nach unten zum Abschnitt „nginx-Einstellungen“.
- Klicken Sie die Kontrollkästchen Proxymodus und Statische Dateien direkt durch nginx bedienen an.
- Standardmäßig sind bestimmte Erweiterungen für statische Dateien bereits im Feld Statische Dateien direkt durch nginx bedienen angegeben. Sie können hier jedoch Erweiterungen entfernen oder andere hinzufügen. Trennen Sie einzelne Dateierweiterungen durch ein Leerzeichen oder das Zeichen „|“.
- Klicken Sie auf OK.
Bemerkung: Wenn Sie die Option „Statische Dateien direkt durch nginx bedienen“ aktivieren, wird automatisch der Standardmodus „Intelligente Bearbeitung statischer Dateien “ deaktiviert, auch wenn das entsprechende Kontrollkästchen ausgewählt ist.
Statischen und dynamischen Inhalt nur über Apache bereitstellen
Sie können nginx deaktivieren und festlegen, dass alle Inhalte (sowohl statische als auch dynamische) über Apache ausgeliefert werden. Dies ist zum Beispiel hilfreich, wenn Sie einen Fehler in nginx beheben möchten. In Produktionsumgebungen ist es nicht empfehlenswert, Inhalt komplett über Apache zu verarbeiten.
So stellen Sie statischen und dynamischen Inhalt nur über Apache bereit:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx und scrollen Sie nach unten zum Abschnitt „nginx-Einstellungen“.
- Klicken Sie das Kontrollkästchen Proxymodus an.
- Entfernen Sie das Häkchen bei Intelligente Bearbeitung statischer Dateien und Statische Dateien direkt durch nginx bedienen .
- Klicken Sie auf „OK“.
Aktivieren von nginx-Caching
Das Aktivieren von nginx-Caching ermöglicht es dem nginx-Proxy-Server, bestimmten dynamischen Website-Inhalt zwischenzuspeichern. Die zwischengespeicherten Daten bleiben für kurze Zeit gespeichert (normalerweise nur ein paar Sekunden). Dies kann dabei helfen, die Ladedauer der Website zu verkürzen und die Serverauslastung zu verringern.
Das Aktivieren von nginx-Caching ist nur für Websites mit einem spezifischen Profil empfohlen (beispielsweise beliebte Blogs oder Nachrichten-Websites):
- Starker Datenverkehr.
- Der Inhalt wird alle paar Sekunden aktualisiert.
Das Aktivieren von nginx-Caching kann für Websites mit folgendem Profil wirkungslos oder sogar schädlich sein:
- Mäßiger oder schwacher Datenverkehr.
- Der Inhalt wird ein paar mal in der Minute aktualisiert.
- Personalisierter Inhalt wird verwendet (beispielsweise die geographische Lage des Besuchers oder der Inhalt seines Einkaufswagens).
So aktivieren Sie nginx-Caching:
- Gehen Sie zu Websites & Domains > Einstellungen für Apache & nginx.
- Wählen Sie im Bereich „nginx-Einstellungen“ das Kontrollkästchen „nginx-Caching aktivieren“ aus.
- (Optional) Sie können die Einstellungen für nginx-Caching personalisieren. Wenn Ihnen nginx-Caching nicht vertraut ist, wird empfohlen, die Standardeinstellungen beizubehalten. Falsches Konfigurieren dieser Einstellungen kann die Website- und Serverleistung beeinträchtigen.
- Klicken Sie auf OK.
Einstellungen für nginx-Caching
Einstellungen für nginx-Caching, die auf der Benutzeroberfläche von Plesk angezeigt werden, stimmen mit den Anweisungen für nginx und bestimmten Einträgen in der nginx-Konfigurationsdatei überein. Einzelheiten dazu finden Sie in der unten aufgeführten Tabelle.
Einstellung für nginx-Microcaching, angezeigt auf der Plesk Benutzeroberfläche | Die zugehörige nginx-Anweisung | Der zugehörige nginx-Parameter (falls vorhanden) |
---|---|---|
„Cache-Größe“ | proxy_cache_path | max_size |
„Cache-Zeitlimit“ | proxy_cache_valid | |
„Cache-Schlüssel“ | proxy_cache_key | |
„Abfragen mit Cookies zwischenspeichern“ | Festgelegt in der nginx-Konfigurationsdatei | |
„Caching deaktivieren für Standorte“ | Festgelegt in der nginx-Konfigurationsdatei | |
„Cache umgehen, wenn“ | proxy_cache_bypass | |
„Überholte Cache-Einträge zurückgeben“ | proxy_cache_use_stale |
Bemerkung: Für Websites, die nginx zusammen mit dem PHP-FPM-Handler verwenden, werden die Anweisungen proxy_cache*
ersetzt mit fastcgi_cache*
. Die Einstellung „Cache-Schlüssel“ wird beispielsweise von der Anweisung fastcgi_cache_key
bestimmt, und nicht von proxy_cache_key
.
Einstellung „Abfragen mit Cookies zwischenspeichern“
Standardmäßig speichert nginx keine HTTP-Abfragen, die den Cookie-HTTP-Header enthalten. Sie können dieses Verhalten ändern und veranlassen, dass nginx HTTP-Abfragen mit bestimmten Cookies zwischenspeichert, wenn Sie die Namen der Cookies im Feld „Abfragen mit Cookies zwischenspeichern“ festlegen. Wenn Sie beispielsweise die Cookie-Namen _ga
und _gid
festlegen, kopiert nginx nur HTTP-Abfragen mit Cookie-Headers, die _ga oder _gid
enthalten, in den Zwischenspeicher. Nginx kopiert keine HTTP-Abfragen in den Zwischenspeicher, deren Cookie-Header wenigstens einen Cookie-Namen enthalten, der nicht in dem Feld festgelegt ist.
Einstellung „Caching deaktivieren für Standorte“
Sie können die Serverauslastung reduzieren, indem Sie nginx so konfigurieren, dass bestimmter Webinhalt (beispielsweise dynamischer Inhalt, der nicht oft aufgerufen wird) nicht in den Zwischenspeicher kopiert wird. Legen Sie dazu den gewünschten URI $request_uri im Feld „Caching deaktivieren für Standorte“ fest. Wenn Sie beispielsweise /wp-admin/ festlegen,
wird nginx Inhalt, der sich auf das WordPress-Admin Panel bezieht, nicht zwischenspeichern.
Bemerkung: Wenn Sie mehrere Werte in den Feldern „Abfragen mit Cookies zwischenspeichern“ und „Caching deaktivieren für Standorte“ festlegen möchten, geben Sie jeden in einer separaten Zeile an.
Standardwert in Servereinstellungen
Sie können den Wert jedes Parameters einstellen, indem Sie entweder einen benutzerdefinierten Wert eingeben oder den Standardwert stehen lassen. Im letzten Fall verwendet Plesk die Werte aus der Standard-Webserver-Konfiguration, die von Ihrem Serveradministrator (Hosting-Provider) definiert wird.
Ihre Werte überschreiben die Standardwerte. Die einzige Ausnahme bildet die Einstellung Zugriff auf Website verweigern. Hier werden die IP-Adressen aus der Standardkonfiguration sowie die von Ihnen angegebenen IP-Adressen auf Ihre Website angewendet. Im Falle eines Konflikts (z. B. wenn Sie eine IP-Adresse zulassen, die in der Standardkonfiguration verweigert wird) werden Ihre Einstellungen verwendet.