php – 以编程方式确定连接是通过HTTP还是通过HTTPS进行的?

我想将我的网站用户从http:// mysite重定向到https:// mysite.

如何在PHP中以编程方式执行此操作?

最佳答案
如果$_SERVER [‘HTTPS’]设置为on,则页面将通过https加载.但是,您应该将cookie标记为安全,您可以使用setcookie的其中一个参数进行标记.如果cookie不安全,它们可能通过未加密的http传输,并且可能被盗,即使用户被立即重定向也是如此.

http://php.net/manual/en/function.setcookie.php

对于实际的重定向,我使用.htaccess重写,而不是PHP.使用以下内容创建.htaccess文件.

RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} !=on
RewriteCond ^(.*)$https://www.example.com/$1 [R=301,L]

转载注明原文:php – 以编程方式确定连接是通过HTTP还是通过HTTPS进行的? - 代码日志