Die Server-Konfiguration legt fest, wie ein Webserver wie nginx oder Apache Anfragen beantwortet. Aus SEO-Sicht entscheidet sie über Weiterleitungen, Statuscodes, HTTP-Header und die Erreichbarkeit unter HTTPS. Dieser Eintrag behandelt die Konfiguration von Webservern.
Wie ist die Konfiguration aufgebaut?
nginx liest seine Einstellungen aus der Datei nginx.conf, die in einer verschachtelten Struktur aus Kontexten besteht: main, events, http, server und location. Ein server-Block beschreibt eine Website, location-Blöcke beschreiben das Verhalten für bestimmte Pfade. Änderungen werden mit nginx -s reload übernommen, wobei der Master-Prozess die Syntax zuerst prüft.
Bei der Auswahl der location gilt eine feste Reihenfolge. Der längste passende Präfix wird gemerkt, danach prüft nginx reguläre Ausdrücke in der Reihenfolge der Datei. Der Modifizierer = verlangt einen exakten Treffer, ^~ stoppt die Prüfung der regulären Ausdrücke.
Apache nutzt eine Hauptkonfiguration und erlaubt zusätzlich die verzeichnisbezogene .htaccess, sofern AllowOverride es zulässt. Die Apache-Dokumentation empfiehlt die Hauptkonfiguration, wo sie zugänglich ist.
Beispiel
Weiterleitung aller HTTP-Anfragen auf HTTPS in nginx:
server {
listen 80;
server_name example.com www.example.com;
return 301 https://example.com$request_uri;
}
X-Robots-Tag für PDF-Dateien, ebenfalls aus Googles Dokumentation:
location ~* \.pdf$ {
add_header X-Robots-Tag "noindex, nofollow";
}
Häufige Fehler
- Weiterleitungsschleifen. Bei
rewritebricht nginx nach zehn Durchläufen mit einem Serverfehler 500 ab. - Regex-Location überschreibt Präfix-Regel. Ohne
^~greift ein passender regulärer Ausdruck vor einem Präfix. - Alte Query-Parameter bleiben hängen. Enthält die Ersetzung bei
rewriteneue Parameter, hängt nginx die ursprünglichen dahinter an. Ein Fragezeichen am Ende der Ersetzung verhindert das. - Syntaxfehler in
.htaccess. Bei Apache führen sie laut SELFHTML zu Serverfehlern. nginx prüft die Syntax beim Reload.
Häufige Fragen
Wo liegt die nginx-Konfiguration?
Standardmäßig unter /usr/local/nginx/conf, /etc/nginx oder /usr/local/etc/nginx, je nach Installation.
Quellen
- Beginner’s Guide – nginx.orgnginx.org
- Module ngx_http_rewrite_module – nginx.orgnginx.org
- Robots-Meta-Tag und X-Robots-Tag – Google Search Centraldevelopers.google.com
- Apache HTTP Server Tutorial: .htaccess-Dateienhttpd.apache.org
- htaccess – SELFHTMLwiki.selfhtml.org
Stand: