使用PHP检查SSL的万无一失的方法

时间:2016-01-26 17:49:34

标签: php linux ssl

我们需要检查服务器是否安装了SSL。我们尝试过的每一种方法似乎都不是万无一失的。

我们的最终目标是,如果有人输入http://somedomain.com,我们可以测试服务器是否有SSL,然后显示https://somedomain.com

我们需要能够使用PHP而不是htaccess来实现这一点,因为这是我们正在创建的模块。使用file_exists或curl all似乎是某种可能无法启用的缺点。

提前致谢!

2 个答案:

答案 0 :(得分:0)

您可以使用php $_SERVER['HTTPS']。 例如

if (!isset($_SERVER['HTTPS']) || $_SERVER['HTTPS'] != 'on') { header("Location: myurl.com"); exit(); }

如果$_SERVER['HTTPS']为空并且$_SERVER['HTTPS']设置为on,您应该同时尝试两种方式。

请注意,您应该将这段代码放在页面的开头,因为重定向发生在header(),只有在没有输出html的情况下才会有效。

答案 1 :(得分:0)

  1. 您可以连接到$hostname:443吗?
  2. $hostname:443是否为$hostname
  3. 提供了有效的证书
  4. ???
  5. 利润!