做这个的前提是,先自行配置好https环境。
接下来在首页的位置加上
<?php
switch ($_SERVER["HTTP_HOST"])
{
case "mmgg.net":
header("location:https://www.mmgg.net");
break;
}
//http转化为https
if ($_SERVER["HTTPS"] <> "on")
{
$xredir="https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
header("Location: ".$xredir);
}
?>
其他语言以此类推。
当然还可以做302跳转。
补充阅读#
解释 PHP 中 HTTP 跳转 HTTPS 的基本流程,以及代理部署时应检查的请求信息。
如何理解与使用#
原文的前提是目标域名已有可用 HTTPS;跳转应保留需要的路径和查询参数,并在发送响应头之前避免输出正文。
验证与边界#
反向代理终止 TLS 时,应用看到的协议可能不同于用户访问协议,需要按可信代理配置处理,防止循环跳转。分别检查首跳地址、状态码和最终页面。
