Voraussetzungen für Redirects:
mod_rewrite
aktiviertRewriteEngine On
In mehreren Zwischenschritten:
# First rewrite to HTTPS: # Don't put www. here. If it is already there it will be included, # if not the subsequent rule will catch it. RewriteCond %{HTTPS} off RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] # Now, rewrite any request to the wrong domain to use www. # [NC] is a case-insensitive match RewriteCond %{HTTP_HOST} !^www\. [NC] RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Quelle: https://stackoverflow.com/a/13997498/5157290
Mit der folgenden Anweisung wird dabei die bisherige Subdomain beibehalten.
RewriteCond %{HTTP_HOST} ^(.*)altedomain.de [NC] RewriteRule ^(.*)$ https://%1neuedomain.de/$1 [R=301,L]
Hiermit kann ein URL-Pfad teilweise ersetzt werden.
URL: https://www.domain.de/hilfe/restlicher/pfad/
Ziel: https://www.domain.de/support/restlicher/pfad/
RedirectMatch 301 /hilfe/(.*) /support/$1
Redirect 301 /bisheriger/pfad/ https://www.domain.de/neuer/pfad/
Mit dem folgenden Abschnitt lassen sich URLs mit Datumsfilter, z.B. für Newsbeiträge, umleiten. Mit dem regulären Ausdruck ([0-9]{4})
wird die gegebene vierstellige Jahreszahl an die Variable $1
übergeben.
Außerdem werden in den neuen URLs die Monatsnamen ausgeschrieben.
Beispiel:
URL: https://www.domain.de/alte-artikel/rueckblick/dateFilter/2019/03/
Ziel: https://www.domain.de/artikel/2019/maerz/
RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/01/ /artikel/$1/januar/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/02/ /artikel/$1/februar/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/03/ /artikel/$1/maerz/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/04/ /artikel/$1/april/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/05/ /artikel/$1/mai/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/06/ /artikel/$1/juni/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/07/ /artikel/$1/juli/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/08/ /artikel/$1/august/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/09/ /artikel/$1/september/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/10/ /artikel/$1/oktober/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/11/ /artikel/$1/november/ RedirectMatch 301 /alte-artikel/rueckblick/dateFilter/([0-9]{4})/12/ /artikel/$1/dezember/
Einfache Weiterleitung auf https://www.domain.com/de/ oder https://www.domain.com/en/, abhängig von der im Browser eingestellten Sprache.
Die RewriteCond
-Regeln stellen sicher, dass nur beim Aufruf der Startseite eine Weiterleitung erfolgt. URLs mit einem query string werden nicht weitergeleitet.
RewriteCond %{REQUEST_URI} ^/$ RewriteCond %{QUERY_STRING} ^$ RewriteCond %{HTTP:Accept-Language} ^(de|en) RewriteRule ^ https://%{HTTP_HOST}/%1/ [R=301,L,QSA]
Quelle: https://stackoverflow.com/questions/53445594/typo3-v9-5-sites-language-redirects