CDN防盗链

应用场景

在我们搭建自己的阿里云CDN时,加快我们站点的静态文件响应速度。

但是与此同时,我们站点里的某些静态资源可能会被其他用户所盗取,然后使用我们的流量让他们的站点变得更流畅。

案例:

假设我们的网站为A 里面有一个静态的CDN链接

此时用户B看到我们的网站里的CDN链接并盗用了我这个链接,发布在他们自己的网站上。

此时用户看到用户B的图片的流程图

用户
站点B

可以看见用户并不知道这个CDN链接是属于我的,此时站点B就是在盗用我的CDN链接,并且没有给我带来流量。使用 阿里云CDN是存在外网下行流量费用和请求费用的。

站点B这样的行为我称之为”白嫖“。

如果我们只是站在在道德层面上去指责别人,并不采取措施,我们的钱包里的钱就是为他人来带便利和流量。

所以我们需要CDN防盗链

阿里云配置

step1:找到CDN防盗链配置

CDN控制台
域名管理

step2: 配置防盗链

我配置允许通过浏览器地址栏直接访问资源url,如果关闭了,我们的域名访问我们的站点如果配置了cdn将无法被访问了。

以下是阿里云帮助文档对防盗链配置的描述:

设置防盗链功能,包括以下参数:- Referer 白名单。仅允许指定的域名访问 CDN 资源。
- 是否允许空 Referer。如果不允许空 Referer,则只有 HTTP 或 HTTPS header 中包含 Referer 字段的请求才能访问 CDN 资源。例如,对于一个名为 oss-example 的 Bucket,设置其 Referer 白名单为`https://www.aliyun.com/`。则所有 Referer 为`https://www.aliyun.com/`的请求才能访问 oss-example 这个 Bucket 中的 Object。

到这里就已经配置完成了,你可以尝试在本地的网页上引用该图片路径,发现无法访问,配置成功。

我们可以放心CDN链接流量不会被其他网站盗用了。

有效使用CDN缓存

应用场景

当我们配置好自己的CDN加速站点后,发现我们加载页面的时候会比较慢。

这是为什么呢?明明配置了CDN加速,并且理论上配置后速度应该很快才对,凭什么我的就比较慢呢?

排查问题

稍加思索,我用chrome浏览器打开F12看到

为啥我这么多静态文件加载速度这么慢? 特别是有好几个js文件只有几十kb,为啥加载将近1秒或者1秒以上?

分析问题

根据我的非专业理解分析(PS:图画得有点丑见谅=。=)

根据图可知:

原来在CDN服务器上会去判断该静态文件是否被缓存了,现在我开通阿里云CDN后还没有去配置过任何CDN缓存相关的东西(PS:我最开始以为阿里云会自动为我缓存=。=)。

解决问题

找到配置地点

域名管理
找到需要配置的域名

添加缓存

这里我是配置的目录 代表在我域名下所有的目录都将被缓存在CDN里

当然这里可以根据需要配 文件名后缀 或者目录。

至于过期时间可以根据自己的使用去设置。

使用后效果

可以看到相同的js已经加入CDN缓存后加载时间已经降低到几十ms了,速度已经大大的加快了。

这里需要注意的是:配置好CDN缓存后第一次加载可能还是会比较慢,因为CDN服务器中还没有该文件的缓存,还是要去服务器拉取,此时的速度也是根据服务器带宽来区分的。第二次加载时CDN中已经有缓存了,速度会非常快~

其他配置

在我们配置过程中,我们可以看到性能优化几个字眼(PS:我对性能两个字比较敏感,虽然还有安全配置啥的,但是我个人博客服务器我对安全就不太关注了,毕竟还要付费,哈哈哈)

把能点的都点上把,毕竟压缩文件也能节约流量,降低CDN使用成本。

CDN防盗链与有效使用CDN缓存相关推荐

  1. nginx的防盗链,动静分离,缓存,负载均衡,反向代理

    1.防盗链有两种实现方式 第一种采用了URL重写模块 location ~.*\.(jpg|gif|png)$ {valid_referers none blocked *.demo.com demo ...

  2. 呆错图床系统源码图片CDN加速与破解防盗链功能

    呆错图床系统是一款免费的PHP图床程序,核心功能是提供图片外链服务.图床API服务.图片CDN加速与破解防盗链. 图片上传 支持本地储存.FTP储存.第三方云储存(阿里云 OSS.腾讯云 COS.七牛 ...

  3. 新建网站提升曝光率设置集合(边使用边更新)(包括:SEO优化,Robots设置,CDN加速,防盗链)

    目前处于边学习边记录的状态,将自己建站中遇到的问题记录下来,以供大家参考,最终效果可以访问我的主页进行查看:alvincr.com Table of Contents 1.1 SEO优化目的(搜索引擎 ...

  4. nginx指令(alias、set、proxy_pass、rewrite、upstream)、跨域问题、防盗链、缓存、gzip压缩

    root alias set proxy_pass rewrite upstream ip_hash:根据客户端机器的IP地址进行hash计算,相同ip会固定地访问同一台服务器主机. 跨域问题 防盗链 ...

  5. Nginx优化与防盗链(隐藏版本号、配置缓存时间、日志分割、修改进程数、配置连接超时、使用gzip压缩页面、防盗链设置,fpm优化)

    文章目录 隐藏Nginx版本号 网页压缩 网页压缩配置 网页缓存时间 网页缓存时间设置 更改Nginx运行进程数 连接超时 nginx防盗链设置 盗链网站 配置httpd 日志分割 fpm参数优化 隐 ...

  6. 【Java从0到架构师】Nginx 拓展 - HTTPS支持、缓存、Http请求防盗链、限流、高可用(Keepalived)

    Nginx HTTPS 支持 SSL 证书 重写 - rewrite Nginx 跨域解决方案 Nginx 开启缓存 Http 请求防盗链 Nginx 限流方案 常见的限流策略 - 计数器算法.漏桶算 ...

  7. Nginx图片防盗链、缓存和压缩的示例

    一.图片防盗链 简单即是最好,最简单的方法是用ngx_http_referer_mmodule模块的valid_referers参数来构建,这也是最常见和最常用的方法: 1 2 3 4 5 6 7 8 ...

  8. Apache 网页与安全优化(网页压缩--缓存--防盗链等)

    文章目录 前言 一.Apache 网页优化 1.1.网页压缩 1.1.1.gzip 介绍 1.1.2.Apache 的压缩模块 1.1.3.mod_deflate 模块 1.2.网页缓存 二.Apac ...

  9. FAF世链区块链大会|区块链开发工程师王祥懿:FAF全球首发第一条CDN公链

    2021年8月7日,由世链财经.FAF主办,世链矿业.斯塔克科技.世链投研.世链资本.丰收资本联合主办,CSLA.DHD冠名的"FAF世链区块链大会"在深圳隆重开启.世链财经记者有 ...

最新文章

  1. 系统集成项目管理工程师软考辅导——3年真题透解与全真模拟
  2. java的方法什么时候加载,java – JVM什么时候加载类?
  3. 企业级 WEB 报表工具——FineReport
  4. 使用 Recipe 安装 SAP Commerce Cloud
  5. 奖金15万!全球首届“AI球球大作战:Go-Bigger多智能体决策智能挑战赛”开启
  6. 记录一次IDEA开发JavaWeb项目时JS中文乱码排错方法
  7. 计算语言学(Computational Linguistics)【转】
  8. classmethod作用
  9. innodb存储引擎的基本架构
  10. ospf的五类LSA
  11. ClickHouse-物化视图
  12. WebIDE 使用指南
  13. python将pdf转成excel_PDF转EXCEL,python的这个技能知道吗?
  14. 如何创建自己的 Google Chrome 扩展程序
  15. onenote冲突服务器显示,ONENOTE同步分区失败,显示“正在等待另一个设备完成上载您的笔记”?...
  16. 中国互联网微博生死局及商业价值分析
  17. Exchange 2013/2016/2019修改附件大小限制
  18. 日本超高人气聊天软件LINE最全注册攻略来了
  19. python如何将数组里的数提取出来_python [:3] 实现提取数组中的数
  20. iframe的滚动条隐藏后仍可滑动

热门文章

  1. 机器学习--模型参数优化及scoring可选参数
  2. Word/Excel 固定表格大小,填写内容时,表格不随单元格内容变化
  3. 【读书笔记】《曾国藩的正面与侧面(三)》
  4. 【Arcgis每天学一点】从无人机航测的DSM上提取准确的高程点
  5. 改善C++ 程序的150个建议学习之建议8:拒绝晦涩难懂的函数指针
  6. 计算机网络【码元、波特、速率、带宽】
  7. [NOIP] [最短路] NOIP2012Junior 文化之旅 (culture)
  8. 长链剖分 - 攻略(BZOJ3252)
  9. 开源项目you-get的下载和使用、使用Cookie、配置ffmpeg
  10. 简单实现基于 STM32F407+ESP8266+RFID 的物联网小项目