<?php
//http转化为https
if ($_SERVER["HTTPS"] <> "on")
{
$xredir="https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
header("Location: ".$xredir);
}
?>
用此代码会出现死循环
我的应用
SSL CDN加速>>>>>SSL七层负载均衡>>>>>内部nginx没有SSL
浮在均衡器配置443转向内部80
并且负载均衡器上也配置有证书
cdn上也有证书
如何做http跳转https啊
如果在cdn上开启全面ssl即cdn访问源网站使用http模式那么上面的代码就行不通了会死循环因为php判断的是内部服务器的$_SERVER["HTTPS"。判断结果是http那么跳转到https 但是cdn上永远会使用http访问源网站
如果开启全面ssl
即 cdn开启ssl ,负载均衡器开启ssl 负载均衡器到内部服务器也启用ssl 这样三层加密速度慢不说 我测试了一下好像也会重复定向
我画一下请求过程
HTTP
CDN 80 >>>> 负载均衡 80>>>>> 内部服务器 80 完全正常
HTTPS模式
用户>>>>>CDN 443 >>>> 负载均衡 80>>>>> 内部服务器 80 怎么做http跳转到https
用户 >>>>>CDN 443 >>>> 负载均衡 443>>>>> 内部服务器 80 怎么做http跳转到https
用户 >>>>>CDN 443 >>>> 负载均衡 443>>>>> 内部服务器 443 怎么做http跳转到https
如果不做跳转上面3钟HTTPS模式访问都正常
但是要做跳转都会出现重复定向 怎么破啊大神们看看
而且负载均衡器好像也不支持SNI
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.