2015-09-10 61 views
-1

我有一个PHP脚本,它接收用户并作为URL参数传递并将其存储在数据库中。 为了使用这个脚本我有访问将http切换为https

http://ipadress/script.php?user=testuser&pass=1234 

这是一个Linux机器的IP地址。

为了能够从http更改为https,我应该进行哪些更改?我必须使用SLL证书,或者是否有解决方案,允许我从我的PHP脚本执行此操作?

请问您能提供一些提示吗?

+0

服务器需要启用SSL。然后从您的PHP脚本中,您可以将'http://'更改为'https://'以访问URL。 – Maximus2012

+0

看看是否有帮助:http://manual.seafile.com/deploy/https_with_apache.html。如果服务器本身没有运行SSL,我认为你不能从你的PHP脚本执行任何操作。 – Maximus2012

+0

此外,SSL证书本身是可选的。您可以在没有证书的情况下启用SSL。 – Maximus2012

回答

0

我希望这有助于!

$redirect= false; 
    if (!isset($_SERVER['HTTPS'])) { 
     $redirect= true; 
    } else { 
     if ($_SERVER['HTTPS'] != "on") 
      $redirect= true; 
    } 
    if ($redirect) { 
     $url = "https://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; 
     header("HTTP/1.1 301 Moved Permanently"); 
     header("Location: ".$url); 
     exit(); 
    } 
+0

我纠正了这个问题,修复了一个未重命名的变量,并改变了重定向来进行实际的头部调用。现在,只要将某人从http重定向到https,就更加正确。我还添加了一个“301永久移动”标题,这将有助于像SEO这样的东西。 –