为什么PHP';s";服务器“U协议”;即使使用https也显示HTTP/1.1?

为什么PHP';s";服务器“U协议”;即使使用https也显示HTTP/1.1?,php,https,Php,Https,地址栏显示“”并显示一个锁图标(点击该图标显示为AES-256),但当我运行以下代码时,它总是打印“HTTP/1.1” 为什么不显示https?服务器协议与页面的安全性无关,它会报告所使用的连接是HTTP 1.0还是HTTP 1.1或HTTP 2.0: HTTP/1.1是原始HTTP(HTTP/1.0)的修订版。在HTTP/1.0a中 为每个资源分别连接到同一服务器 要求HTTP/1.1可以多次重复使用连接进行下载 图片、脚本、样式表等等,在页面完成后 交付。因此,HTTP/1.1通信的延迟更

地址栏显示“”并显示一个锁图标(点击该图标显示为AES-256),但当我运行以下代码时,它总是打印“HTTP/1.1”


为什么不显示https?

服务器协议与页面的安全性无关,它会报告所使用的连接是HTTP 1.0还是HTTP 1.1或HTTP 2.0:

HTTP/1.1是原始HTTP(HTTP/1.0)的修订版。在HTTP/1.0a中 为每个资源分别连接到同一服务器 要求HTTP/1.1可以多次重复使用连接进行下载 图片、脚本、样式表等等,在页面完成后 交付。因此,HTTP/1.1通信的延迟更少 由于TCP连接的建立呈现出相当大的复杂性 头顶

而HTTP 2.0是下一代HTTP,它允许在一个HTTP 2.0连接中多路复用多个HTTP 1.1连接

出于您的目的,请检查是否设置了HTTPS服务器变量:

i、 例如

if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') { ... }

警告:
$\u服务器['HTTPS']
可以设置,但包含字符串
off
。但这对cronjobs/CLI脚本不起作用。
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') { ... }