Problemy z SSL z Magento za modułem równoważenia obciążenia (pętla 302)


11

Przed moją instalacją Magento znajduje się moduł równoważenia obciążenia obsługujący wszystkie elementy SSL. Jeśli nie powiem Magento, że odbiera bezpieczne połączenie, przejdzie w pętlę przekierowań 302. Jedynym rozwiązaniem , które do tej pory znalazłem, jest łatanie głównego indeksu.php w podobny sposób (kod znajduje się tuż nad Mage::runlinią u dołu indeksu.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;
    }
}

(Dodałem treść z posta na blogu z dodatkiem komentatora tutaj, na wypadek, gdyby link zniknął).

Jak mogę uniknąć łatania pliku podstawowego?

Odpowiedzi:


31

Dzięki wskazówkom na kanale # magento-de irc znalazłem znacznie bardziej eleganckie rozwiązanie. Dodaj te linie na końcu swojego .htaccessi powinno być w porządku:

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

Przejdź tutaj, aby uzyskać dłuższe wyjaśnienie.


KOLEŚ. To rozwiązanie naprawiło mój problem !!! Dziękuję bardzo
kevando

To samo rozwiązało mój problem.
David Tay

też dla mnie pracowało
Darryl,

Po tym, jak użyłem cloudflare do użycia darmowego ssl, to rozwiązanie pomogło naprawić problem nieskończonych pętli.
Damodar Bashyal

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.