Проблеми SSL з Magento за балансиром навантаження (302 цикл)


11

Перед моєю установкою Magento - балансир навантаження, що обробляє всі речі SSL. Якщо я не скажу Magento, що він отримує захищене з'єднання, він перейде в цикл переадресації 302. Єдине рішення, яке я знайшов поки що, - це виправлення основного index.php так (код іде прямо над Mage::runрядком внизу 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;
    }
}

(Я додав вміст із публікації в блозі з додаванням тут коментатора, якщо посилання перестане).

Як я можу уникнути виправлення основного файлу?

Відповіді:


31

Завдяки підказці на каналі # magento-de irc я знайшов набагато більш елегантне рішення. Додайте ці рядки до кінця .htaccessі це має бути добре:

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

Піти сюди для більш тривалого пояснення.


ДУДЕ. Це рішення вирішило мою проблему !!! Велике спасибі
kevando

Тут же це вирішило моє питання.
Девід Тей

працював і для мене
Дарріл

Після використання cloudflare для використання безкоштовного ssl це рішення допомогло виправити нескінченну проблему циклів.
Дамодар Башиял

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.