2016-10-27 2 views
1

Доброго день,Magento перенаправлять AWS Балансировщику Нагрузки

У меня есть установки Magento с Nginx работает на Scaling Group Auto на AWS со стандартными 3 случаями. Для перенаправления трафика я использую балансировки нагрузки с помощью SSL вызывает моя структура выглядит следующим образом:

пользователя> Load Balancer (порт 443)> Instance (порт 80)

Я изменил в моей базе данных в таблице mg_core_config_data URL-адреса для использования https.

Проблема я думаю, что происходит это следующим образом:

Каждый раз, когда я получить доступ к своему URL, Load Balancer пытается извлечь тела содержимого, чтобы отправить мне информацию, которую я запрашивающий, таким образом, так как я использую порт 80, когда Load Balancer достигает моего экземпляра и пытается загрузить Magento, base_url, который находится в базе данных, перенаправляется на https. При этом перенаправлении процесс повторяется снова, потому что я перенаправлен обратно на https: // и попытаюсь снова получить информацию о экземпляре на порту 80. Я думаю, что каждая проблема является одной из этой base_url и я не могу вернуть информацию Magento с портом 80.

Выполните мою конфигурацию Nginx:

server { 
    listen 80 DEFAULT_SERVER; 

    server_name _; 
    root /home/ubuntu/www/mysite; 
    index index.php index.html index.htm; 

    location/{ 
     try_files $ uri $ uri//index.php$is_args$args; 
    } 

    location ~ \ .php $ { 
     try_files $ uri /index.php = 404; 
     fastcgi_pass unix: /run/php/php7.0-fpm.sock; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; 
     fastcgi_params include; 
     fastcgi_cache CACHE; 
     fastcgi_cache_methods GET HEAD; 
     fastcgi_cache_valid 200 1m; 
     fastcgi_cache_bypass $ no_cache; 
     fastcgi_no_cache $ no_cache; 
    } 

    ... 
} 

Ошибку я получаю доступ к моей балансировке нагрузки через HTTPS:

enter image description here

enter image description here

Кто-нибудь есть какие-либо suggesti или через это?

спасибо.

ответ

0

При взгляде на ваше описание проблема заключается в том, что ваши экземпляры считают, что к ним обращаются через HTTP (а не HTTPS) и перенаправляются на HTTPS.

Это не проблема с ELB, ELB просто перенаправляет HTTP-запросы. Это также не проблема EC2, поскольку EC2 не работает на уровне HTTP.

редиректах вызваны либо
- ваш Nginx сервер
- ваша установка Magento

Как правило, SSL перенаправлять поведение настраивается на уровне веб-сервера.

В приведенном ниже фрагменте конфигурации nginx нет переадресаций. Вы не делили весь файл конфигурации, поэтому ищите перенаправления или 301 или 302 в конфигурационном файле nginx. Также исследуйте другие файлы конфигурации nginx и файлы .htaccess в папке установки magento.

Я не знаком с Magento, но Magento также может вызвать перенаправления http (s). Убедитесь, что в качестве базового URL-адреса установлен «внешний» URL-адрес (тот, который сопоставляется с ELB), поскольку это будет базовый URL-адрес с точки зрения конечных пользователей.

На странице https://www.siteground.com/tutorials/magento/magento_ssl.htm вы найдете инструкции по настройке Magento для SSL. Возможно, стоит попробовать установить базовый URL-адрес в http: // и активировать опции «защищенные URL-адреса».

Смежные вопросы