AWS Elasti c Первоначальный доступ к приложению Beanstalk не является безопасным, но последующее перенаправление - PullRequest
0 голосов
/ 01 февраля 2020

Я использую Elasti c Beanstalk (с балансировщиком нагрузки) для поддержки сайта Wordpress. Я настроил SSL через диспетчер сертификатов (ACM) и включил балансировщик нагрузки для прослушивания порта 443 для HTTPS. Я также попытался принудительно установить HTTPS на своем сайте Wordpress, добавив следующие строки к wp_config.php в моем исходном пакете (как предлагается во многих сообщениях):

define('WP_HOME','https://example.com');
define('WP_SITEURL','https://example.com');
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
       $_SERVER['HTTPS']='on';

Однако моя проблема заключается в том, что когда я попробуйте зайти на мой сайт, первоначальный доступ небезопасен, ie соединение HTTP, но когда я пытаюсь перейти на другие страницы и вернуться на мой сайт, соединение сразу становится безопасным соединением HTTPS. Мне интересно, что я могу сделать, чтобы решить эту проблему, так что при первоначальном доступе к сайту, HTTPS принудительно. Я также сталкивался с ошибками «Слишком много перенаправлений» раньше из-за попытки принудительного использования HTTPS, а Wordpress делает это немного сложным, поэтому я стараюсь избегать этого. Буду признателен за любую оказанную помощь. Спасибо!

1 Ответ

0 голосов
/ 02 февраля 2020

Вы можете добавить расширения elasti c beanstalk в вашу среду. Обычно вы включаете папку .ebextensions в root вашего приложения, чтобы включить каждое из ваших расширений. ( docs )

Если вы используете nginx в качестве прокси-сервера, который, как я полагаю, есть, добавьте файл с именем 10-nginx.config в каталог расширений.

files:
  "/etc/nginx/sites-available/elasticbeanstalk-nginx-docker-proxy.conf":
    content: |
      server {
          listen 80 default_server;

          server_name _;

          return 301 https://$host$request_uri;
      }

Однако вы также должны учитывать завершение HTTPS на вашем балансировщике нагрузки и наличие приложения, работающего на порту 80 в сети среды.

Документы по этому вопросу здесь; https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https-httpredirect.html

...