Nginx rewrite multiple Konditionen – www nach nicht www und http nach https

NGINX ist ein außergewöhnlicher Webserver, den ich als Alternative zu Apache sehr empfehlen kann. Er ist unglaublich effizient und bietet eine erstklassige Leistung.
Wenn Sie sich für einen neuen Webserver interessieren, sollten Sie NGINX unbedingt ausprobieren. Sie werden von seinen beeindruckenden Fähigkeiten und seiner Geschwindigkeit nicht enttäuscht sein. Probieren Sie es aus!

Heute möchte ich kurz zeigen, wie man im {server} Teil der Konfiguration eine Umleitung einrichten kann, welche folgende Bedingungen erfüllt:

  1. Umschreiben des Domain Namens von www.domain.de nach domain.de
  2. Umleitung von http nach https

In Realität lassen sich mit dieser Umleitung auch weitere Bedingungen abdecken, zum Beispiel auf einen komplett anderen Domainnamen zu leiten.

Hier kommt nun die Anpassung der Konfig:

server {
server_name domain.de www.domain.de
set $wanted_domain_name domain.de;
if ($http_host != $wanted_domain_name) {
 rewrite ^(.*)$ https://$wanted_domain_name$1;
}
}

Was passiert ist, dass alles, was nicht dem wanted_domain_name entspricht, eben in diesen umgeschrieben wird – simples!

Wenn auch noch die wanted_domain immer per https ausgeliefert werden soll, dann muss auch für diese noch ein Rewrite eingerichtet werden, ebenfalls im Serverblock:

# HTTPS umleitung
if ($scheme != "https") {
 rewrite ^ https://$host$uri permanent;
}

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

eMail-Benachrichtigung bei Kommentaren. Auch möglich: Abo ohne Kommentar.