Masalah SSL dengan Magento di belakang load balancer (302 loop)


11

Di depan instalasi Magento saya adalah penyeimbang beban yang menangani semua hal SSL. Jika saya tidak memberi tahu Magento bahwa ia menerima koneksi aman, ia akan masuk ke 302 redirect loop. Satu-satunya solusi yang saya temukan sejauh ini adalah menambal index.php utama seperti (kode berada tepat di atas Mage::rungaris di bagian bawah 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;
    }
}

(Saya menambahkan konten dari posting blog dengan tambahan dari komentator di sini, jika tautannya mati).

Bagaimana saya bisa menghindari menambal file inti?

Jawaban:


31

Berkat tip di saluran # magento-de irc saya menemukan solusi yang jauh lebih elegan. Tambahkan baris-baris ini ke akhir baris Anda .htaccessdan itu akan menjadi baik:

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

Buka di sini untuk penjelasan yang lebih panjang.


DUDE. Solusi ini memperbaiki masalah saya !!! Terima kasih banyak
kevando

Sama di sini, ini menyelesaikan masalah saya.
David Tay

bekerja untuk saya juga
Darryl

Setelah saya menggunakan cloudflare untuk menggunakan ssl gratis, solusi ini membantu memperbaiki masalah loop tak terbatas.
Damodar Bashyal

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.