在php5中使用https

时间:2013-10-27 10:59:28

标签: php mysql login https

问题:  如何在注册/登录(任何其他)php页面中使用https?  伪代码:

is it https?
yes continue
no redirect same page via https

背景 我想做一个安全的注册和登录表单。  我想通过所有步骤来检测我是否错过了什么。  2.我想特别询问如何使用https来保护去往服务器的密码。

  • 添加1。步骤:a。用户点击链接注册/登录=>检查是否 注册/页面使用https - 如果不是redirct并使用https (这我做了一些但不知道如何 - 问题的第二部分) 湾所以现在我通过https连接到注册/登录页面, 用户将密码设置为imput fieldt,这显然是显而易见的 设置输入类型密码(显然使用post方法),然后他 按提交按钮 - 因为我使用post + https数据应该是 将安全传递给服务器。 C。现在注册/登录脚本是 传递,并重定向到句柄页面,它可能是相同的PHP 页面 - 我还应该使用https。 d。现在我写了 密码通过sha256像sha256(sha256(密码)+盐),
    使用预准备语句建立与数据库的连接以防止sql 注射如果输入数据是好的,则完成注册(一些 邮件可以发送,但它的另一个问题,不需要解决它 这里),如果它是登录和密码适合我把一些数据 session - 关于id + rights等用户的信息,QUESTION IS:我应该 仍然使用https作为会员部分?我认为这不重要, 除非我想更改密码(我将再次使用https进行更改
    密码表格)。
  • 添加2。 HTTPS CONNECTION CHECK用户点击登录/注册页面的链接,我应该这样做:

    是HTTPS吗?是=> CONTINUE,NO =>通过HTTPS重定向同一页我知道有一些变量或某些东西告诉我它的https,但我不知道如何         把它写在php5(这一两行)。那么问题是如何做第2点(HTTPS连接CHECK)?

1 个答案:

答案 0 :(得分:5)

要检查请求是否已通过HTTPS进行,请检查$_SERVER['HTTPS']

$https = !empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off';