====== .htaccess ====== ===== RewriteCond / RewriteRule ===== Voraussetzungen für Redirects: - Apache-Modul ''mod_rewrite'' aktiviert - ''RewriteEngine On'' ==== Weiterleitung auf HTTPS und ggf. www-Domain ==== 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]] ---- ==== Weiterleitung von alter Domain auf neue Domain ==== Mit der folgenden Anweisung wird dabei die bisherige Subdomain beibehalten. * %%www.altedomain.de%% -> %%www.neuedomain.de%% * shop.altedomain.de -> shop.neuedomain.de RewriteCond %{HTTP_HOST} ^(.*)altedomain.de [NC] RewriteRule ^(.*)$ https://%1neuedomain.de/$1 [R=301,L] ---- ==== Teilpfad ersetzen ==== 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 ---- ==== Einzelne Seiten / URLs weiterleiten ==== Redirect 301 /bisheriger/pfad/ https://www.domain.de/neuer/pfad/ ---- ==== Datumsfilter mit Monatsnamen weiterleiten ==== 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/ ---- ==== Weiterleitung nach Browser-Sprache ==== 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