SSL-Probleme mit Magento hinter Load Balancer (302-Schleife)


11

Vor meiner Magento-Installation befindet sich ein Load Balancer, der alle SSL-Aufgaben erledigt. Wenn ich Magento nicht sage, dass es eine sichere Verbindung empfängt, geht es in eine 302-Umleitungsschleife. Die einzige Lösung, die ich bisher gefunden habe, besteht darin, die Hauptdatei index.php wie folgt zu patchen (Code steht direkt über der Mage::runZeile unten in der Datei index.php):

/**
 * Prevent Magento from performing a 302 redirect loop.
 *
**/

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO'])) {
    if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
        $_SERVER['HTTPS'] = 'on';
        $_SERVER['SERVER_PORT'] = 443;
    }
}

(Ich habe den Inhalt aus dem Blog-Beitrag mit dem Zusatz eines Kommentators hier hinzugefügt, falls der Link nicht mehr funktioniert.)

Wie kann ich vermeiden, eine Kerndatei zu patchen?

Antworten:


31

Dank eines Tipps auf dem Kanal # magento-de irc habe ich eine viel elegantere Lösung gefunden. Fügen Sie diese Zeilen am Ende Ihres hinzu .htaccessund es sollte in Ordnung sein:

# Detect the Load-Balancer-Header and set the header magento expects
SetEnvIf X-Forwarded-Proto https HTTPS=on

Hier finden Sie eine längere Erklärung.


KUMPEL. Diese Lösung hat mein Problem behoben !!! Vielen Dank
— Kevando

Gleich hier löste dies mein Problem.
— David Tay

arbeitete auch für mich
— Darryl

Nachdem ich Cloudflare zur Verwendung von Free SSL verwendet hatte, half diese Lösung, das Problem mit Endlosschleifen zu beheben.
— Damodar Bashyal

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.