【发布时间】:2015-01-20 09:22:57
【问题描述】:
我一直试图强制我的页面使用 HTTPS 地址,但它不起作用,但是当我回显 $url 时,它会使用 https 提供所需的地址
代码
<?php
if (!isset($_SERVER['HTTPS']) || !$_SERVER['HTTPS']) {
$url = 'https://' . $_SERVER['HTTP_HOST']
. $_SERVER['REQUEST_URI'];
header('Location: ' . $url);
}
?>
页面仍然使用 http 协议加载,任何人都可以帮我将其转到 https 页面
【问题讨论】:
-
定义“不起作用”。实际发生了什么?如果您在浏览器的开发人员工具的“网络”选项卡中监视请求,您会看到什么?您看到对 HTTP 版本的请求了吗?它得到回应了吗?响应是否包含位置标头?您看到 HTTPS 版本的请求了吗?它得到回应了吗?反应正确吗?服务器的日志文件说什么?如果您将 PHP 错误报告设置得尽可能高怎么办?
-
不起作用意味着.. 页面使用 http 协议加载,这就是我可以清楚看到的
-
放在页面上其他的PHP能用吗?
-
是的,其他 php 的东西也可以正常工作
-
服务器的日志文件说什么?如果您将 PHP 错误报告设置得尽可能高怎么办?