На адресной панели отображается « https://mywebsite.com », и на нем отображается значок блокировки (и нажатие на это показывает AES-256), но когда я запускаю следующий код, он всегда печатает «HTTP / 1.1».
echo $_SERVER[ "SERVER_PROTOCOL" ];
Почему это не показывает https?
SERVER_PROTOCOL не имеет ничего общего с безопасностью вашей страницы, он сообщает, если используются соединения HTTP 1.0 или HTTP 1.1:
http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
HTTP / 1.1 – это ревизия исходного HTTP (HTTP / 1.0). В HTTP / 1.0 для каждого запроса ресурса создается отдельное соединение с тем же сервером. HTTP / 1.1 может повторно использовать соединение несколько раз для загрузки изображений, скриптов, таблиц стилей и так далее после того, как страница была доставлена. Таким образом, сообщения HTTP / 1.1 отличаются меньшей задержкой, так как установление соединений TCP создает значительные накладные расходы.
Для ваших целей проверьте, установлена ли переменная сервера HTTPS:
http://php.net/manual/en/reserved.variables.server.php
т.е. что-то вроде
if (isset($_SERVER['HTTPS']) { ... }