针对腾讯云内容分发CDN的设置,避免无法登录或登录状态不能更新的问题

xc
xc
2024-04-20 / 0 评论 / 23 阅读 / 正在检测是否收录...

概述

这段时间使用到了一些云资源,比如cdn和对象存储功能。
1.对象存储主要解决网站图片资源的放置和管理,其实就是图床功能。
2.cdn 当然是加速网站访问速度,多人,多地域访问的请求响应问题,缓解了服务器请求频次和流量等问题。
以上解释是我个人的理解,具体还请自行搜索了解,我这里只谈我使用中遇到的问题。
我使用cdn的时候,网站的后台登录来时不能传递给前台,也算是折腾了很久。才总算解决,特此记录一下,同时供参考:

开始设置

(一)基础配置

1.基本信息

基本信息是在创建cdn时,根据实际情况填写。

cdn基础设置1.jpg

2.源站信息

源站的意识是如果缓存不存在,去哪里“要数据”
这里的源站不能使用加速的域名(会出现死循环)。
为了方便,直接写服务的ip+443端口即可,或者是一个域名,这个域名指向源服务器所在ip。

CDN基础信息2.jpg

(二)访问控制

这一项,我的实际设置基本都没内容,只有IP访问限频配置设置了:130,这个看自己需要.但下面还是顺便解释一下意义,便于理解设置。

1.防盗链配置

放盗链不能防止别人获取信息,只能阻止那些用你的资源显示别人网页的行为。
(常见的有链接盗图,图片流量从你这走,但是是别人的网页)
建议使用白名单模式,允许空referer访问
(如果不允许空referer访问,无法输入url地址访问,会直接返回403)
注意,如果你的应用需要调用外部的服务进行跳转,把这个外部服务的网址也加进来,否则无法跳转。

2.IP黑白名单配置(默认无需配置)

有如下情况需要配置,包括但不限于:
(1) 受到指定ip的攻击,加入黑名单
(2) 只允许白名单内的ip使用

3.IP访问限频配置

防止一些网络攻击,推荐开启,根据应用类型配置,如果不知道设置qps多少,可以使用100。然后后台统计大多数人具体的访问量,来进行调整即可
如果设置过小,影响正常使用,网页加载文件不能全部载入,会报513的错误,如果过大,这个值设置就没有意义了。

4.鉴权配置

鉴权配置的意义在于,可以后端控制用户获取静态资源,即使用户知道文件位置,如果鉴权不通过,也无法从cdn获取。根据需要配置。有多种鉴权方式,一种是用算法时间鉴权,类似jwt,一种是转发到你的服务器进行验证(至于怎么验证则是后端的设计了)

5.UA黑白名单配置

添加对指定请求头的控制,通常是君子协议,因为请求头可以改。
(但是大多数普通用户不会改的,所以还是过滤小白的操作)

6.下行限速配置

根据你的应用实际情况配置,为了限制具体的某个文件用户获取的速度。
通常用于高流量的场景,可以不配置,等需要了再配置。

7.访问端口配置

保持默认,开启80和443

8.区域访问控制插件

建议开启,如果只面向国内用户,建议开启只允许国内ip访问

9.远程鉴权

需要自己搭建鉴权的服务器,有需要配置(需要后端开发支持),如果不熟悉,直接默认不开启。

(三)缓存配置

重点内容

1.缓存键规则配置

cdn缓存配置1.jpg

2.节点缓存过期配置

重点配置区域
(1) 全部文件,不缓存:(这个非常重要,很可能会导致后台正常登陆,但前台状态更新不及时的情况,这个问题困扰我很久,最终还是腾讯云的客服帮忙排查出的)
(2) /usr/uploads,缓存10天。(这个文件夹大多是图片或附件,所以这里选择了,下面的文件后缀名,我就没有再增加图片格式了)
(3) svg;woff;ttf;woff2;css;js,缓存2小时,根据自己情况调整。


给出我定义的内容,便于你懒得打字输入:
/usr/uploads
svg;woff;ttf;woff2;css;js

腾讯云cdn缓存.jpg

3.浏览器缓存过期配置

保持默认即可,需要前端开发时去做,建议保持默认或者根据需要。

4.状态码缓存

保持默认404,如果需要返回别的状态,根据需要调整。

5.HTTP头部缓存配置

建议开启,方便开发和应用

cdn缓存配置3.jpg

6.访问URL重写配置

重写url可以在cdn配置,也可以在服务器入口处配置,根据需要配置。
我的做法通常是不在cdn配置,即这里是无规则的。

(四)回源配置

重点内容

1.合并回源配置

建议开启即可

2.分片回源配置

通常不建议开启,容易出小问题

3.回源HTTP请求头配置

重点配置
强烈建议开启,增加X-Forward-Port请求头获取真实ip
原因是将ip写入请求头,就不用专门把ip一层层传递了,后端直接就可以从请求头获取。

回源设置.jpg

4.回源跟随301/302配置

建议开启,简单说就是你的外链也进行缓存,我的设置为不开启。

5.回源超时配置

保持默认配置

6.回源URL重写配置

根据情况,一般情况默认即可。
这个配置同样可以在后端服务器配置,我的习惯是在后端服务器配置。
把除了必须暴露外部的目录之外的其它全部屏蔽并指向404(后端的结构很重要)

7.回源SNI配置

保持默认关闭
只有在一个ip绑定了多个域名时才需要配置

注:一个ip绑定多个域名要额外加入反向代理或路由才能实现

(五)https配置

https是重点配置区域,稍有不慎就会无法访问,建议一定要用https

1.HTTPS服务

重点配置
强烈建议开启,不建议使用http,建议全部https

2.HTTPS配置

重点配置
务必上传域名的证书(https证书),否则会提示中间人攻击,直接无法访问
注意:需要手动将https证书(ssl)的公钥和私钥内容复制到如下指定位置,自己生成的不行

3.HTTP 2.0配置

开启

4.强制跳转

建议开启,通常情况下,后端的服务器应该也增加跳转或者直接关闭http的访问(只允许https)、
http->https,302,不携带头部
(选择不携带头部,如果正常请求都是https,用http访问显然是为了试探)

5.HSTS配置

建议保持默认关闭

6.TLS版本配置

保持默认

7.OCSP装订配置

建议开启

8.QUIC

保持默认关闭,有需要也可以额外付费用

(六)高级配置

1.自定义错误页面配置

如果请求不到资源返回的页面,可以不配置,或者指向404

2.用量封顶配置(重要)

如果网站不是非常重要,又怕被攻击导致高额账单,这个是保底。
可以设定一段时间内最大用量,同时到达时进行提前预警。

3.SEO配置

默认开启即可

4.HTTP响应头配置

通常不需要配置。
使得每个通过cdn的都会返回给客户端的http响应头的内容

5.智能压缩

开启即可。

6.离线缓存配置

开启即可。
开启后如果源站故障,这个也能显示,不过这个实际作用不是很大,除非是内容型网站,很少和后端交互。

7.POST请求大小配置

默认为1M(nginx的默认也是1M)
建议不要动,请求通常不会超过1M,如果是post上传大文件,建议分段后上传。


参考文章: cdn配置(超详细+图解+原理)

0

评论 (0)

取消
使用 Typecho 建站,并搭配 joe 主题(有修改)
蜀ICP备2022005623号 川公网安备 51012202001212号
本站已运行 00000000
Copyright © 1970 ~ Xcshare All rights reserved.