http=>https 301 redirect

hallo zusammen, ich würde gerne das komplette Frontend von Shopware auf die SSL Verschlüsselung umstellen. Jetzt habe ich gehört, dass man hier aus SEO Sicht eine 301 Weiterleitung aller alten Links einrichten soll. Kann mir jemand bitte die genauen Zeilen geben, die ich in der htaccess Datei eingeben muss? Ich konnte im Internet leider nichts genaues diesbezüglich finden. Ich bedanke mich im Voraus. Grüße Natalie

In die .htaccess folgendes schreiben: RewriteCond %{HTTPS} off RewriteRule (.\*) https://%{HTTP\_HOST}%{REQUEST\_URI} [R=301,L] Zeile 1: überprüft ob das Modul mod_rewrite aktiviert ist Zeile 2: aktiviert die Rewrite Engine Zeile 3: überprüft ob HTTPS eingeschaltet ist, wenn nicht führt er den Inhalt von Zeile 4 aus Zeile 4: leitet sämtliche Anfragen via Statuscode 301 (permanent redirect) auf HTTPS um

[quote=“kayyy”]In die .htaccess folgendes schreiben: RewriteCond %{HTTPS} off RewriteRule (.\*) https://%{HTTP\_HOST}%{REQUEST\_URI} [R=301,L] Zeile 1: überprüft ob das Modul mod_rewrite aktiviert ist Zeile 2: aktiviert die Rewrite Engine Zeile 3: überprüft ob HTTPS eingeschaltet ist, wenn nicht führt er den Inhalt von Zeile 4 aus Zeile 4: leitet sämtliche Anfragen via Statuscode 301 (permanent redirect) auf HTTPS um[/quote] vielen Dank für die schnelle Antwort kayyy. Jedoch fehlt die 3. und 4. Zeile in deinem Beitrag wie es aussieht? Kannst du die Zeilen bitte ergänzen? Danke und Gruß Natalie

<ifmodule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </ifmodule> Da Shopware aber bereits Rewrite on hat, benötigst du diese conditions nicht :wink:

Hallo liebe Community, ich habe ein ähnliches Problem, der redirect wird korrekt vollzogen, allerdings kommt dann “to many redirects” als Fehlermeldung. Muss ich da in den Grundeinstellungen noch irgendetwas beachten, damit es nicht doppelt ist? Theor. kann ich jede Seite ein mal ohne SSL aufrufen und im nächsten Schritt leitet SW dann erst auf https weiter. Ich will nicht, dass die URL ohne https überhaupt aufrufbar ist, er soll da direkt den 301er weiterleiten. Thank you :thumbup: :wink:

Normalerweise musst du im Backend in den Grundeinstellungen nur “SSL überall” aktivieren. Dann sollte die Umleitung von http auf https ohne Probleme funktionieren. Ansonsten noch: http://www.sysadminslife.com/linux/quic … -htaccess/

Danke kayyy für die Antwort, genau wie in dem Artikel beschrieben hatte ich es in der htaccess eingerichtet, und bekomme dann die Fehlermeldung “to many redirects”. Daher wusste ich nicht, ob es evtl. von SW-Seite bereits einen redirect gibt. Ich will ja letztlich, dass die Seite gar nicht mehr ohne https aufrufbar ist. LG

Ich wollte mich noch mal der Aufgabe verschreieben, dass die Seiten direkt von http auf https weitergeleitet werden.
Wenn ich 

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

in der htaccess stehen habe bekomme ich die Seite gar nicht mehr erst angezeigt mit dem Fehler „To many redirects“ 
 

Im Backend steht SSL und Überall SSL verwenden auf aktiv.

Wie gesagt, mein Ziel ist es, dass jede Seite sofort umgeleitet wird und nicht erst mit einem Zwischenschritt.

(Die Startseite ist ohne SSL aufrufbar und jede weitere intern verlinkte Seite dann mit SSL) 

Vlt hat zwischenzeitlich ja jemand das gleiche Problem gehabt / gelöst. 

Probier mal folgendes:

RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

 

Warum Deine ursprüngliche Condition (RewriteCond) zu dem Problem führt, weiß ich nicht, denn die sollte eigentlich so passen; ich hatte aber das exakt gleiche Problem.

1 „Gefällt mir“

Hammer, das hat funktioniert! 
Top, ich danke dir! :slight_smile:

Da sei an dieser Stelle mal die Frage bezüglich SEO gestellt. Besteht bei einer radikaten Umstellung auf HTTPS dann duplicate content? Wer SEO betreibt, benutzt auch die Webmaster-Tools. Was ist hier? Die alte Seite löschen und neu anlegen? Die neue Adresse neu anlegen? Fragen über Fragen wenn ein Shop viele Jahre mit HTTP läuft und zeihmlich gut gelistet ist. Man will ja nicht im Ranking abstürzen.

Hallo,

duplicate Content wird nur erstellt wenn die Einträge in der vhost nicht korrekt abgebildet werden.

Die Umleitung zu https sollte wie folgt angelegt werden (Beispiel NGINX):

server {
        listen xxx.xxx.xxx.xxx:443 default_server ssl http2;

        server_name deine-domain.de;
        server_name www.deine-domain.de;
        
        usw…

}

server{
        listen xxx.xxx.xxx.xxx:80;
        server_name deine-domain.de;
        return 301 https://www.deine-domain.de$request_uri;

}

WICHTIG: Viele nutzen die Möglichkeit die “listen” Directive zur Vereinfachung in 1 Server-Abschnitt anzubringen, z.B.:

server{
        listen xxx.xxx.xxx.xxx:80;

        listen xxx.xxx.xxx.xxx:443 default_server ssl http2;

        server_name deine-domain.de;

        server_name deine-domain.de;
        server_name www.deine-domain.de
        return 301 https://www.deine-domain.de$request_uri;

}

Dieses hat in ihrer Funkion zwar Gültigkeit und man findet dieses Beispiel sehr häufig in irgendwelchen “Howto´s”, doch funktioniert der HTTP-Request nicht da die Return-Anweisung nicht greift.

Wichtig ist ja, sollte eine Anweisung per deine-domain.de oder www.deine-domain.de im Browser erfolgen, so sollte der Server nur 1 Antwort kennen ohne alternative.

Es müssen 2 Server-Abschnitte konfiguriert werden, wobei der 2. Server-Abschnitt per “return 301 https://www.deine-domain.de$request_uri;” auf Server-Abschnitt 1 verweist.

Nur so erkennt auch Google einmaligen Content, da eine permanente Weiterleitung auf dem Ziel liegt.

Bei der Umstellung auf https erkennt Google die neuen Seiten und es werden im gleichen Ranking dann kurzfristig beide Seiten mit und ohne https angezeigt. Nach kurzer Zeit verschwinden dann alle Seiten ohne https.

Gruß

Olaf