Problem mit Weiterleitung von SW5 Shop zu neuer SW6 Domain

Hi zusammen,

ich habe folgendes Problem:
Ich habe einen neuen SW6 Shop aufgebaut und will den aktuellen SW5 Shop weiterleiten. Der neue Shop hat eine andere Domain und Ziel ist folgendes:

  1. Es sollen die Artikel und Kategorien aus dem aktuellen Shop auf die Artikel und Kategorien des neuen Shops geleitet werden
  2. Es sollen alle andere Aufrufe aus dem aktuellen Shop auf die neue Startseite gelenkt werden
  3. Es gibt eine Ausnahme. Der Aufruf des Backends aus dem alten Shop soll bestehen bleiben und nicht weitergeleitet werden.

Gemacht habe ich das in der .htaccess dann so:

  1. Redirect 301 /de/produkt1 https://www.xyz.de/produkt1/artnr
    und Redirect 301 /de/kat1/ https://www.xyz.de/kat1/kat4
    Das jeweils für alle Artikel und Kategorien.

  2. +3)
    RedirectMatch 301 ^/(?!backend).* https://www.xyz.de
    oder
    RewriteRule !^backend($|/) https://www.xyz.de [L,R=301]
    oder
    RewriteCond %{REQUEST_URI} !^/(backend)
    RewriteRule ^ https://www.xyz.de [R=301,L]

Ergebnis ist:
Wenn ich 2+3 weglasse, werden alle Artikel und Kategorien sauber weitergeleitet, sonst natürlich nichts.
Wenn ich 2+3 hinzunehme, werden alle Anfragen immer auf die Startseite des neuen Shops weitergeleitet. Auch, wenn die Weiterleitung der Produkte und Kategorien oberhalb in der .htaccess stehen, werden diese ignoriert und alles landet auf der neuen Homepage.
Außerdem wird die Ausnahme für https://www.xyz.de/backend ignoriert und auch diese Anfrage landet auf der neuen Homepage.

Das passiert leider immer, egal, welche der 3 Varianten ich für 2+3 verwende, das Ergebnis ist gleich, die Ausnahme wird ignoriert und alle Anfragen landen auf der SW6 Homepage.

Kann mir jemand sagen, was hier falsch ist? Vielen Dank.

RewriteCond %{REQUEST_URI} ^/backend [NC]
RewriteRule ^ - [L]

Versuch das mal fürs Backend.

Das klappt leider auch nicht.

Ich habe es jetzt aber geschafft, wobei das echt richtig schwierig war:

# Weiterleitung zu neuem Shop
Redirect 301 /de/produkt1 https://www.xyz.de/produkt1/artnr
Redirect 301 /de/kat1/ https://www.xyz.de/kat1/kat4

<IfModule mod_rewrite.c>
RewriteEngine on

# Weiterleitung zu neuem Shop
RewriteCond %{REQUEST_URI} ^/?de/produkt1
RewriteRule ^.*$ https://www.xyz.de/produkt1/artnr [L,R=301,QSD]

#RewriteBase /shopware/

# Fix for office 365 autodiscover feature to prevent CSRF errors
RewriteRule ^autodiscover/autodiscover.xml$ - [F,L,NC]

# HTTPS config for the backend
RewriteCond %{HTTPS} !=on
RewriteRule backend/(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteRule shopware.dll shopware.php
RewriteRule files/documents/.* engine [NC,L]
RewriteRule backend/media/(.*) media/$1 [NC,L]
RewriteRule custom/.*(config|menu|services|plugin)\.xml$ ./shopware.php?controller=Error&action=pageNotFoundError [NC,L]

RewriteCond %{REQUEST_URI} ^/?backend
RewriteCond %{REQUEST_URI} !(\/(engine|files|templates|themes|web)\/)
RewriteCond %{REQUEST_URI} !(\/media\/(archive|banner|image|music|pdf|unknown|video)\/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ shopware.php [PT,L,QSA]

RewriteCond "%{QUERY_STRING}" "^$"
RewriteRule "^$" https://www.xyz.de [L,R=301,QSD]

RewriteCond %{REQUEST_URI} !(\/(engine|files|templates|themes|web)\/)
RewriteCond %{REQUEST_URI} !(\/media\/(archive|banner|image|music|pdf|unknown|video)\/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ https://www.xyz.de [R=301,L]

# Fix missing authorization-header on fast_cgi installations
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

</IfModule>

So funktioniert es jetzt. Die einzelnen Produkte und Kategorien werden direkt richtig verlinkt, alles andere geht auf die Startseite und das Backend ist weiterhin unter der alten Domain erreichbar.

Die Redirect Regeln werden leider nicht priorisiert, warum auch immer. Deswegen wurden sie als RewriteCond/RewriteRule nochmal angelegt und dann klappt alles wie es soll.

Dieses Thema wurde automatisch 30 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.