2013-02-24 5 views
4

Как перенаправить весь трафик при использовании Amazon Elastic Beanstalk с PHP с http на https? Я установил мой Beanstalk на порт https (весь сертификат и все было настроено).Elastic Beanstalk - PHP/Force HTTPS

+1

Вы хотите, чтобы подтолкнуть все страницы HTTPS? –

ответ

6

Beanstalk устанавливает свой балансировщик нагрузки для отправки X-Forwarded-Proto заголовков на ваш экземпляр.

if ($_SERVER['HTTP_X_FORWARDED_PROTO'] !== 'https') { 
    // redirect to secure site 
    header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']); 
} 

Хотя, некоторые клянутся не позволяя HTTP вообще, из-за SSL stripping методов, используемых в атаках MiTM.

Сказав это, вы можете уменьшить удаление SSL с помощью HSTS.

+1

Только одно изменение должно быть $ _SERVER ['HTTP_X_FORWARDED_PROTO'] вместо $ _SERVER ['X_FORWARDED_PROTO'] –

+0

@ user1012013 Извините, вы абсолютно правы :) –

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