【发布时间】:2010-11-14 23:08:40
【问题描述】:
我知道一般定义,但我需要更多关于如何实现它们的详细信息以及具体的 PHP,以及我从它们中获得的具体特性是什么?
【问题讨论】:
标签: php ssl https implementation security
我知道一般定义,但我需要更多关于如何实现它们的详细信息以及具体的 PHP,以及我从它们中获得的具体特性是什么?
【问题讨论】:
标签: php ssl https implementation security
一些网络服务器被配置为镜像整个站点,因此您可以通过 http 或 https 获取每个页面,这取决于您喜欢什么,或者网络浏览器如何发送它们。 https 是安全的,但速度有点慢,而且会给您的硬件带来更大的压力。
因此您可以像往常一样实施您的网站和购物,但决定将购物车、结账、付款等所有内容都放在 https 下。为此,购物车的所有链接都是绝对链接,并以https:// 而不是http:// 为前缀。现在,如果人们点击购物车图标,他们会被转移到安全版本,并且因为从那里开始的所有链接都是相对的,所以他们会停留在那里。
但是!他们可能会手动将 https 替换为 http,或者使用恶意链接继续使用未加密的版本等。
在这种情况下,您可能需要检查您的脚本是否通过 https (_SERVER["SERVER_PROTOCOL"], afaik) 调用,如果不是,则拒绝执行(良好做法)。或发出到安全站点的重定向。
附带说明:https 不再使用 ssl 排他性,tls(ssl 的继任者,请参阅rfc2818)更现代
经验法则:用户应该可以选择是否在非关键环境中使用 http 或 https,但在您网站的关键部分(登录/购物车/支付/.. .) 以防止恶意攻击。
【讨论】:
SSL 代表“安全套接字层”,它是一种加密 HTTP 通信(除其他外)的方法。它对网络浏览器和服务器之间的流量进行加密,从而可以发送安全数据而不必担心被窃听。
SSL 是一种网络服务器级别的技术,与 PHP 无关。您可以使用 SSL 启用任何 Web 服务器,无论它是否安装了 PHP,并且您无需编写任何特殊的 PHP 代码即可使您的 PHP 页面显示在 SSL 上。
互联网上有很多关于如何为您可能使用的网络服务器设置 SSL 的指南。这是一个广泛的主题。您可以为 Apache 使用 start here。
【讨论】: