本地模拟实现ssl访问网站

来源:互联网 发布:ubuntu如何下载qq 编辑:程序博客网 时间:2024/05/22 14:04

下面的测试是使用iis6.1做的,本来也想iis5做个出来的,搞了好久还是没搞好

1.创建证书

 证书是ssl网站的根本,如果是实际使用的话,需要申请正规的证书,不过这里只是测试,可以在iss里面创建自己的证书。创建证书方式如下:





2.证书建好了,这个时候需要为网站绑定上https登录的类型。证书就选择刚刚新建好的就行。


3.这个时候网站可以同时使用http与https的方式登录,当使用https登录时有一个小提示,那是因为使用的证书不是经过验证的。



4.如果想网站只能通过https方式访问要怎么设置呢,看下图



这个时候如果还是使用http方式登录会出现下面的情况


当使用https访问



到这里为止就实现了,我们想要的网站只能通过https的方式访问了。


5.这里有个小插曲

我用我们的项目测试这个的时候,发现我浏览器的地址即使输入https登录,但还是调整到http登录,真是百思不得其解,后来发现原来在那个登录页面里面会检查

url的访问方式,如果是https登录则自动跳转到http登录,所以发生了上面的情况。


6.扩展应用

由于使用ssl的网站的速度会大大降低,所以不推荐整站使用ssl的方式,可以只在登录的使用ssl登录,登录验证完了之后,还使用原来的http方式。

这里有个思路:

(1)在http的登录页面输入账号,密码信息后,将这些信息加密后,将页面重定向到https下一个页面比如(SSLogin)。

(2)在sslogin页面里面进行登录信息的验证,验证成功后将登录信息,插入到数据库(为什么要写数据库,而不是直接记录cookie呢?因为http与https网站

是不同的域名,在https下记录后,http的网站是无法访问的)

(3)处理好上面的步骤后,将页面重新调整到http下面的一个页面,传入一个加密的值(这个值可以关联刚刚插入到数据库中的数据)。在此页面可以判断

取值与当时存入值的时间是否超过一定间隔,如果超过可以认为访问已经失效。如果没失效,将相关的信息记录到cookie就可以了。

(4)这里的http与https的网站是一摸一样的,只是在IIS中是2个应用程序。


0 0
原创粉丝点击