网站加速调优

自从加了CDN之后我的博客偶尔会报错”重定向次数过多“

症状:

XXX.XXX.XXX 将您重定向的次数过多。
尝试清除 Cookie.
ERR_TOO_MANY_REDIRECTS

可能原因


  • 参考阿里云cdn解决方案https://help.aliyun.com/document_detail/451418.html
  • 但是cloudflare中并无类似解决方案,排查CDN中ssl相关的,还有github.io设置
  • 众所周知,github.io 的ssl证书自动给你续签。
  • 也有可能301被cdn缓存,https://developer.aliyun.com/article/749187

尝试解决

cloudflare CDN 中的https/ssl开启,github.io中的enforce https勾选不了
参考 https://gist.github.com/cvan/8630f847f579f90e0c014dc5199c337b

cloudflare page rule 设置参考文档https://support.cloudflare.com/hc/en-us/articles/218411427-Is-there-a-tutorial-for-Page-Rules-

  • 意思就是说,浏览器先请求cdn,但cdn只希望从客户端获取https的请求(page rule使用https redirect),于是重定向的过程到不了github.io 因此也就没必要再enforce https。
    试了还是不行
    最终找到以下博客,完美解决以上系列问题

最终方案

参考

https://siriusq.top/github-pages-%E5%90%AF%E7%94%A8-cloudflare-%E5%8A%A0%E9%80%9F%E5%8F%8A-https.html

edge端开启alway use https 和Opportunistic Encryption(HTTP/2的新特性)

origin server端开启源端认证

把上图proxied先全部改为dns only,再回github page刷新

之后可以启用cdn的严格ssl模式

然后再回去把云朵都变黄,流量通过CF即可


改天再试试cloudflare Page,据说节点更好用一些https://hee.ink/p/%E4%BB%8E-github-pages-%E8%BF%81%E7%A7%BB%E5%88%B0-cloudflare-pages-%E7%9A%84%E4%BD%93%E9%AA%8C%E4%B8%8E%E8%B8%A9%E5%9D%91%E5%B0%8F%E8%AE%B0/


速度测试



速度实在是惨不忍睹,,,


速度分析

https://www.webpagetest.org/video/compare.php?tests=230113_BiDcCR_694-r:1-c:0


  • 境外的测试网站(https://www.webpagetest.org/),境内阿里云的图床,而且个别图片高达1MB多

测试网站性能的工具

https://putong.one/speed-test.html



然而桌面端却好一倍,https://developers.google.com/speed/pagespeed/insights/ 以上图片来源于此站点测试
主要还是图片大小问题了


优选CF IP https://github.com/badafans/better-cloudflare-ip

CF CDN缓存配置

cloudflare cf cdn默认只缓存2个小时,提示REVALIDATED,或者EXPIRED如何修改HIT时长,缓存哪些扩展名文件?302 404缓存时间,自定义页面规则

用了一段时间cf,发现经常提示REVALIDATED,,基本上几个小时就一次,然后要回源判断文件是否更新,要不然就是EXPIRED提示文件缓存已经到期。

根据官方文章表明,只缓存2小时
200 301 120m;
302 303 20m;
403 5m;
404 5m;
any 0s;
https://support.cloudflare.com/hc/en-us/articles/202775670
说可以通过服务器输出Cache-Control: s-maxage=200,头部来告诉CDN缓存多长时间在节点上,不过我没测试。

If the URL matches: By using the asterisk (*) character, you can create dynamic patterns that can match many URLs, rather than just one. Learn more
https://support.cloudflare.com/hc/en-us/articles/218411427

页面规则写,不要带http或者https,这样写法是整个域名包括所有二级域名都生效
example.com/
复制代码

Edge cache ttl改成一个月,也就是672h0m0

这样就可以缓存长达一个月的时间啦!

参考写法
example.com/static/
[/static/ subdirectory for static HTML pages]

example.com/.shtml
[.shtml file extension to signify HTML that is static]

example.com/?static=true
[adding static=true query parameter]

如果Cache-Control标头设置为“private”,“no-store”,“no-cache”或“max-age = 0”,或者如果响应中有cookie,则Cloudflare将不会缓存资源,除非将页面规则设置为缓存所有内容并设置了边缓存TTL。
https://support.cloudflare.com/hc/en-us/articles/200172256

cloudflare默认提供缓存哪些扩展名文件?
bmp ejs jpeg pdf ps ttf
class eot jpg pict svg webp
css eps js pls svgz woff
csv gif mid png swf woff2
doc ico midi ppt tif xls
docx jar otf pptx tiff xlsx
https://support.cloudflare.com/hc/en-us/articles/200172516

cloudflare cf CDN 使用服务条款 tos帮助页面,是否允许缓存视频,音频文件
https://bbs.itzmx.com/forum.php?mod=viewthread&tid=94372&fromuid=1

github Page博客速度优化+Cloudflare_https两端配置+解决重定向次数过多问题相关推荐

  1. 使用 Hexo 创建 GitHub Page 博客(一)

    CSDN GitHub Hexo 使用 Hexo 创建 GitHub Page 博客(一) AderXCoding/blob/master/system/tools/hexo/01-use_hexo ...

  2. 手把手教你建github技术博客by hexo

    适合人群 喜欢写Blog的人 有一定的编程基础 爱折腾的人 熟练使用版本控制Git 了解使用Github 熟悉基本的MarkDown语法 环境准备 安装Git 下载 msysgit 并执行即可完成安装 ...

  3. Hexo 个人博客 SEO 优化(3):改造你的博客,提升搜索引擎排名

    Hexo 个人博客 SEO 优化三篇系列文章终于完成了 Hexo 个人博客 SEO 优化(1):搜索引擎原理介绍 Hexo 个人博客 SEO 优化(2):站内优化 Hexo 个人博客 SEO 优化(3 ...

  4. 手把手教你建github技术博客

    适合人群 喜欢写Blog的人 有一定的编程基础 爱折腾的人 熟练使用版本控制Git 了解使用Github 熟悉基本的MarkDown语法 环境准备 安装Git 下载 msysgit 并执行即可完成安装 ...

  5. hexo+gitHub 个人博客搭建及更换主题历程(特适合入门小白)

    内容涵盖 hexo+gitHub 个人博客搭建 搭建过程中遇到的问题及解决方案 更换主题 1. gitHub 创建博客仓库 (1) 注册Github(如果已注册可以忽略次此步骤) 详细注册步骤请参考: ...

  6. github的博客搭建以及标签的自动化

    github博客搭建以及标签的自动化 引子 没有github的程序员,不是好程序员! BUT 如果有一个*.github.io的blog,会不会更酷? 基于以上原因,本拐也折腾了一下自己的github ...

  7. 【效率为王】超详细 Hexo + Github Pages 博客搭建教程

    前言 现在市面上已经有许多博客了,比如 CSDN.掘金.博客园.简书等等.我们可以直接在上面发表内容,而且交互比较人性化,而且也能被搜索引擎检索到.但是总归是别人的平台,经常会受限,因此我们就希望能有 ...

  8. 个人博客 SEO 优化(1):搜索引擎原理介绍

    文章首发于我的博客:个人博客 SEO 优化(1):搜索引擎原理介绍 写在文章前面: 前段时间接到一个 SEO 优化的私活.为了完成这个活,只能赶鸭子上架,从零开始系统地去学习 SEO 知识.经过几天的 ...

  9. 博客推广优化SEO排名方案大汇总!何必东奔西走这里的博客优化的文章应有尽有!!...

    企业 博客优化推广精品方案很有深度,很有参考价值. 建立博客群 博客地址: ①Donews :http://blog.donews.com/default.html ②新浪:http://blog.s ...

最新文章

  1. 硬改TP-Link WR841N v8刷breed和OpenWrt
  2. 空空排错日志:OCS错误日志14501等解决办法
  3. bestcoder#51
  4. ThoughtWorks微服务架构交流心得
  5. 用Python和OpenCV提取颜色直方图特征
  6. crackMe的逆向分析
  7. Spring Security-- 验证码功能的实现
  8. Python《爬取手机和桌面壁纸》
  9. java输出object object_js控制台显示[object Object]问题
  10. Java基础学习总结(56)——学Java必知十大学习目标
  11. 大数据时代:数据质量逐渐成关注焦点
  12. C语言学习笔记---typedef 简介
  13. Educoder计算机数据表示实验(HUST)第2关:汉字机内码获取实验
  14. 基于51单片机的对讲机原理图PCB程序设计
  15. C#调用WPS转换WORD,EXCEL,PPT文件为PDF
  16. 用递归实现阶乘计算器
  17. DIY空气检测仪:攀藤G5ST分析仪
  18. 区块链的应用与发展综述
  19. php比java简单吗_php比java简单吗
  20. 开发一款外卖App应该具备哪些功能?

热门文章

  1. Quake4动画部分
  2. 用P5.js绘制一个看着鼠标的章鱼哥
  3. 快来试试一行java程序看cpu核心数
  4. Android 异步编程
  5. 区块链时代游戏什么样,有哪些改变?Cocos引擎创始人王哲是这么看的
  6. windows下node.js的全局模块配置完成后无法全局调用的解决方法
  7. 【数据库管理】⑩数据字典
  8. 如何高效遍历HashMap
  9. 《Unity Shader入门精要》随书彩色插图
  10. FPGA — Vivado下ILA(逻辑分析仪)详细使用方法