2009-07-29 78 views

回答

3

某些网络服务器配置为镜像整个网站,因此您可以通过http或https获取每个网页,具体取决于您的偏好,或者网页浏览器如何发送它们。 https是安全的,但速度稍慢,会给硬件带来更大的压力。

因此,您可能会像平常一样实施您的网站和商店,但决定将所有内容从购物车结帐到付款等等。为了实现这一点,所有到购物车的链接都是绝对的,并以https://而不是http://为前缀。现在,如果用户点击购物车图标,他们会转移到安全版本,并且因为所有的链接都是相对的,他们会留在那里。

但是!他们可能会手动替换https,或者使用恶意链接进入未加密的版本等。

在这种情况下,您可能需要检查您的脚本是否通过https调用(_SERVER["SERVER_PROTOCOL"],afaik),以及否认执行,否则(良好做法)。或发出重定向到安全站点。

在一个侧面说明

:HTTPS不要使用SSL exclusivley了,TLS(继任者SSL时,请rfc2818)是经验更现代

规则:用户应该有选择,如果他们希望http或https在非关键环境中,但被迫在您网站的关键部分(登录/购物车/付款/ ...)上使用https以防止恶意攻击。

+0

非常有趣!你能否提供关于2点的更多信息: 1-他们怎么能通过调用“http://example.com/pay.php”来调用我的“https://example.com/pay.php”?如果我的文件“pay.php”位于https文件夹中,他们不应该得到类似“找不到页面”的内容?从开发者方面来看,我并不需要担心SSL或TLS如何在服务器上配置,因为我对它们没有太多的了解,是吗?基本上会有类似于2个文件夹在服务器上设置“http”和“https”,我可以选择从那里做什么,对吧? – 2009-07-29 10:15:59

5

SSL代表“安全套接字层”,它是加密HTTP通信(除其他外)的一种方法。它对网络浏览器和服务器之间的流量进行加密,从而可以发送安全数据而不用担心被窃听。

SSL是一种网络服务器级技术,与PHP无关。您可以启用任何带有SSL的Web服务器,无论它是否具有PHP,也不必编写任何特殊的PHP代码以使您的PHP页面通过SSL显示。

在互联网上有很多许多指南可以找到关于如何为您可能使用的任何网络服务器设置SSL。这是一个广泛的主题。你可以使用Apache的start here

+0

SSL现在是TLS http://en.wikipedia.org/wiki/Transport_Layer_Security – TWith2Sugars 2009-07-29 09:05:53

相关问题