将所有请求重定向到https://www symfony2谷歌HTTP负载均衡器
我知道这个问题已经被问了很多次了,但我尝试了所有的解决方案,没有一个不适合我 我正在使用symfony2与谷歌云托管,并使用他们的http负载平衡器。My将所有请求重定向到https://www symfony2谷歌HTTP负载均衡器,symfony,redirect,https,google-cloud-platform,Symfony,Redirect,Https,Google Cloud Platform,我知道这个问题已经被问了很多次了,但我尝试了所有的解决方案,没有一个不适合我 我正在使用symfony2与谷歌云托管,并使用他们的http负载平衡器。My.htaccess具有以下代码 RewriteEngine On RewriteCond %{HTTP_HOST} ^example.com [nocase] RewriteRule ^(.*) https://www.example.com/$1 [last,redirect=301] 我的负载平衡器有两个转发规则,一个用于http,一个用
.htaccess
具有以下代码
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com [nocase]
RewriteRule ^(.*) https://www.example.com/$1 [last,redirect=301]
我的负载平衡器有两个转发规则,一个用于http,一个用于https
现在,我可以将所有请求重定向到,但仍然无法重定向到HTTPS url
请告诉我哪里出错了,我之前使用过AWS和rackspace,但从未遇到过相同的问题。尝试:
RewriteEngine On
#redirect http to https
RewriteCond %{HTTPS} ^off$
RewriteRule ^(.*) https://www.example.com/$1 [last,redirect=301]
#add www
RewriteCond %{HTTP_HOST} ^example.com$ [nocase]
RewriteRule ^(.*) https://www.example.com/$1 [last,redirect=301]
上述情况
RewriteCond %{HTTPS} ^off$
检查原始方案是否为http,将其重定向到https。通过以下方法可以解决此问题,我知道它不是最佳方案,因此仍请提供建议 我在app.php中添加了以下代码
if($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'http' && $_SERVER['HTTP_HOST'] == 'www.example.com') {
header("Location: https://www.example.com".$_SERVER['REQUEST_URI']);exit;
}
抱歉,伙计,same301仍然是一个永久重定向,浏览器永远记住它,所以你需要清除浏览器缓存。我做到了,仍然是一样的:(