4

在将 Amazon Elastic Beanstalk 与 PHP 结合使用时,如何将所有流量从 http 重定向到 https?我已经将我的 Beanstalk 设置为具有 https 端口(所有证书和东西都已设置)。

4

2 回答 2

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']);
}

不过,由于中间人攻击中使用了SSL 剥离技术,有些人会发誓根本不启用 HTTP 。

话虽如此,您可以通过使用HSTS来减轻 SSL 剥离。

于 2013-02-24T11:34:36.053 回答
1

如果您有单实例弹性 beanstalk 环境,请尝试以下解决方案:AWS Elasticbeanstalk single instance Force SSL Redirect loop

于 2014-09-10T21:21:06.367 回答