使用AWS Elastic Load Balancer上的.htaccess路由到HTTPS和非www到www

时间:2016-03-25 22:58:31

标签: apache .htaccess amazon-web-services mod-rewrite

我在亚马逊的Elastic Beanstalk(以及负载均衡器)上的网站存在一些问题。

我想重定向所有流量:

的https:// ...

的http:// ...

www.mysite.com

mysite.com

https://www ...

我拥有的是:

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

这似乎有效,因为有很多关于mod_rewrite和负载均衡器健康检查器问题的文档。

但显然规则错过了用户可能赤裸裸地进入通行证的情况 - " https://MYDOMAIN" - 在这种情况下,我不会发生重定向。

我尝试在这里添加第三行:

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

但这似乎会导致重定向循环并导致503错误。

这里有人有运气吗?

我在强制HTTP上发现了很多线程 - > HTTPS但没有,如果两者都做的话。我发现的那些导致了我所说的503。也许我对弹性豆茎的设置有点偏差?或者还有其他我想念的东西。

感谢您的帮助。

格雷格

0 个答案:

没有答案