Redirect 301 vs. 302

Wenn von einer Webseite auf eine andere Webseite umgeleitet wird, so wird hierfür meist der HTTP-Statuscode 301 oder 302 genutzt. Der Statuscode 301 leitet eine Anfrage permanent zur angegebenen URL um, während der Statuscode 302 früher für die temporäre Umleitung gedacht war. Unter Nginx könnte eine solche Umleitung wie folgt aussehen:

server {
  listen   443 ssl;
  listen [::]:443 ssl;

  server_name .example.com;

  return 301 https://example.org;
}

In diesem Fall würde alle Anfragen von example.com auf die URL https://example.org umgeleitet. Der Statuscode 301 zeigt dem Client hierbei an, dass die Umleitung permanent ist. Dies ist z.B. wichtig bei Suchmaschinen; sie würden der neuen URL mehr Beachtung schenken und die alte URL unter Umständen schneller aus dem Index entfernen. Der Statuscode 302 ist mittlerweile nicht mehr als Moved Temporarily, sondern als Found definiert.

Neben diesen Statuscodes, existieren eine Reihe weitere Statuscodes wie 303 (See Other), 307 (Temporary Redirect) und 308 (Permanent Redirect). Im Gegensatz zu den Statuscodes 301, 302 und 303 wird bei den neueren Statuscodes 307 und 308, das angefragte HTTP-Verb beibehalten. Fragt der Clients in einem solchen Fall mit dem HTTP-Verb POST an, so bleibt dieses bei der Weiterleitung bestehen.

Umleitungen in WordPress per Plugin

Möchte man bestimmte Seiten innerhalb eines WordPress umleiten, so gibt es neben der Möglichkeit dies über den Server zu tun, eine Reihe von Plugins. Für einen Einsteiger könnte die verwendete Syntax der meisten Plugins teilweise zu kompliziert (man denke nur an reguläre Ausdrücke und ähnliches) sein.

Simple 301 Redirects

Simple 301 Redirects

Einfacher kann diese Aufgabe mit dem WordPress-Plugin Simple 301 Redirects erledigt werden. Mit Hilfe des Plugins können einfach Umleitungen angelegt werden. Dabei werden Wildcards durch das *-Zeichen unterstützt und sind somit auch dem Einsteiger nutzbar. Das Plugin ist freie Software und unter der GPL2 (und neuer) lizenziert.