00:00
那接下来呢,我们跟大家来讲一下N这个词怎么去防止盗连,什么叫防盗连呢?给大家先来说一下防盗连啊,本质上就是我们想呃,在存在我们自己服务项这些资源呢,只由只能由我们自己服务器来访问,然后其他的这些引用的这个呢,不能访问,大概道理是这样的。呃,当我们的请求用户啊,打到我们这台机器上,我们这台机器呢,会给他,呃,去寻找他所访问这些资源,对吗?那首先他请求的假设说是个静态的HTML页面,index.html。就像我们之前给大家呃演示的这个页面一样,在这个页面里呢,我们引用了一些其他的资源,这些资源都是在HTML的骨架里再次被访问的,比如说我们在访问到这个HTML的时候,它会给我们返回呃,这个HTML的页面里边的这些静态这些数据,这些数据返回来之后呢,有很多的引用,比如说CSS,比如说JS,它还会在二次的去请求,甚至多次去请求我们当前这个站点,当再次请求的时候呢。
01:08
他在发起请求的时候,会在请求的这个header里。在这个request header里边加上这么一个参数叫ER,这是HTTP协议所规定的由浏览器来遵守的,这个refer呢,在我们第二次访问的时候才有,在第一次访问的时候呢,它是没有的,大家注意看,在request header里是没有这个里边,里边也没有内容,什么都没有,也就是在我们内联的这些资源再次访问请再次访问请求我们服务器的时候,会在会在这个协议头上加上。表示我引用了你之前的这个页面,是从这个页面呃过来的啊,比如说我问你,你从哪来的啊,我从河北来的。啊,第二次来的时候呢,我会问啊,你从哪儿来,因为第一次来你之前呢,你也没去过什么地儿,对吧?啊,这是第二次,它的来源是哪儿啊,这个river,当他带上这个的时候,我就能判定它。
02:07
是不是我当前这台主机了,如果呢,它是我当前台主机,我肯定是要让它访访问我这个服务器的资源的,对吧,就这里边有呃,Log。logo.png。Index HTML呢,这里边需要一个logo png,这是第二次在访问的。第二次访问的时候呢,这里边HTTP请求头率呢,加上这个了。加上之后呢,它表示它是从某一个页面来的,就是刚才我访问的这个index面,当然呢,它会把这个呃,整个完整米色被访问的这个域名给加上。那执行这步动作,这个操作的是谁来执行的呢?这不是我们用户来执行的,我们用户也没法去操作这一步操作,尤其是在浏览器里,浏览器想要让他保证绝对的安全的话,你这些HTTP协议呢,就得让浏览器来帮我们去填充,我们现在呢,是没法操控这个浏览器里边这个是啥的。
03:13
这所以呢,这是浏览器帮我们来完成的,也就是用户呢,只要使用一个正当的浏览器,也是普通用户使用普通比较正常正规的,呃,合法的浏览器,它就一定会带上这个在请求我们的系统,那这种情况下,这是正常的访问,那非法的访问,也就是倒连是是什么意思呢?那当前这个地址,这个站点是我们这个,呃,101。我访问的这是101这个站点,那我自己引用,我自己你肯定得让我引用,对不对,那如果我们再搞一个站点出来。102,我们之前的课里边学了这个pro pass,对吧,我通过pro pass。或者是HTML里的引用。
04:04
啊,比如说我里边直接用着image s RC,你另外一个站点,那么我们在访问这个资源的时候,不管是process pass也好,还是这个image s RC,它都属于第二次访问了,因为打开第二个站点的时候,但是这个还没有配置啊,如果我打开了第二个站点,它的首页,这里边又内联了,呃,一些image啊,JS啊,CSS什么的。他就也一定会加上这个,那么就可以通过这个。来判定这个站点和我原始的站站,原始的这个站点它是不是一个站点,如果不是的话。那我就判断他是非法请求,你又有一个这个网站非法的去引用了我的资源,我本来也不想让他引用,那一定是这样的,如果想让他引用,你也不需要配置这个了,对吧,这是这个防盗连的基本的原理。
我来说两句