当前位置:首页 > 群晖专栏 > 运维部署 > 正文内容

Typecho博客全站部署腾讯云CDN教程

admin5年前 (2019-11-16)运维部署407

前言

建站大半年一直没有太过注重网站的速度.主要是因为新站访问量过低,没有部署的必要,其次就是本人实在是不太了解CDN相关的知识.现在访问量逐渐增加,为了保证网站的访问体验,在网上查找了相关教程,同时也咨询了热心网友后,正式把本站部署到了腾讯云CDN.

为方便后期复用的需求,本文将记录此次部署的全部流程,同时也可以供大家参考.




前期环境


由于CDN的设置比较特殊,请不要参照多篇教程对比设置,以至于会出现无法登录后台,无法实时显示评论等问题.本教程是以Typecho博客程序并使用handsome主题为例.

本站服务器相关环境

  • LNMP环境

  • 部署SSL证书并强制跳转HTTPS

  • 顶级域名ioiox.com配置301跳转到二级域名www.ioiox.com为主用域名


添加域名

腾讯云 - 控制台 - 内容分发网络
域名管理 - 添加域名
1.jpg

  • 域名配置 - 添加顶级域名和www二级域名

  • 源站类型 - 自有源站

  • 源站设置 - 你的服务器IP

2.jpg


也可以只添加一个主用域名,必须确定已经配置好301跳转访问你的主用域名
  • 业务类型 - 静态加速

  • 提交 - 缓存过滤可以等会再详细配置

3.jpg


管理域名

添加成功后点击域名右侧的管理
4.jpg

基本配置

  • 确认域名,业务类型,源站信息,回源配置无误,保持默认即可.

访问控制

  • 过滤参数配置 - 开启

  • 防盗链配置 - 根据实际情况配置

  • IP黑白名单配置 - 根据实际情况配置

5.jpg

  • IP访问限制配置 - 开启 10-30QPS即可

  • 视频拖拽 - 默认关闭

6.jpg

缓存配置

  • 缓存过期配置 - 高级缓存过期设置:默认关闭

  • 新增缓存配置 - 参考下图


如不懂请保持与图中顺序参数一致,以避免一些问题.

以下给出文本以方便复制

/usr/themes/handsome/usr/img
/usr/uploads
.php;.jsp;.asp;.aspx
.jpg;.jpeg;.png;.bmp;.gif;.psd;.ico;.tga;.imb;.tiff;.svg;.woff;.ttf;.woff2
.css;.js;.txt;.doc;.wri;.docs;.dot;.xml;.log;.bat;.csv

7.jpg


注意图中首页缓存时间为1天,也可以根据更新文章的频率高低,来适当降低刷新时间.建议1-6小时之间皆可.
  • 状态码缓存 - 默认

  • HTTP头部缓存配置 - 开启


如果HTTP头部缓存配置开启,需关闭源站的HSTS,避免头部冲突.
一般情况下Nginx和Apache默认是没有配置过HSTS的.你也可以自行搜索相关教程来再次确认是否开启.

8.jpg

回源配置

  • Range回源配置 - 开启

  • 回源跟随301/302配置 - 默认关闭


回源跟随301/302配置请一定不要开启,否则会出现无法登录的情况.

9.jpg

安全配置

  • 鉴权配置 - 默认关闭

10.jpg

高级配置

  • 带宽封顶配置 - 开启并根据实际情况配置

  • HTTPS配置 - 前往配置

11.jpg

  • 配置证书 - 可上传自有证书,也可以在腾讯云免费申请.

  • 选择回源方式 - 协议跟随

12.jpg

  • HTTPS配置 - 开启强制跳转HTTPS

  • 跳转方式设置 - 301跳转

  • HTTP2.0配置 - 开启

  • SEO优化配置 - 开启

13.jpg

  • HTTP Header配置 - 添加HTTP Header


添加HTTP Header 可使你的站点使用CDN时SSL证书等级达到A+级
选择自定义参数
Strict-Transport-Security
max-age=31536000; includeSubdomains; preload;

14.jpg

  • 智能压缩 - 启用


请自行检查你的源站是否开启Gzip智能压缩,如已经开启,此处可关闭.

15.jpg

配置完成


此时需将域名进行CNAME解析到CDN为你生成的CNAME地址上,完成CDN部署.如你和我一样配置了两个域名,可以保持两个域名配置相同,如设置过301跳转到主域名,也可仅配置主域名.

进阶配置

手动刷新CDN缓存

如因网站信息更变过多,可以在腾讯云CDN后台手动刷新全站缓存.具体位置在控制台-内容分发网络-左侧的刷新预热,可以根据批量URL或者文件目录的形式刷新资源.

解决首页访问延迟过高

如果是严格按照本教程使用腾讯云CDN,可以修改php.ini解决首页延迟过高的问题,否则不建议使用.
修改你服务器中的php.ini文件,查找session.cache_limiter参数,修改为session.cache_limiter = none并重启php.下图为修改前后的差别.

本站为军哥LNMP.org的1.6版环境,php.ini在/usr/local/php/etc目录下,php重启命令为/etc/init.d/php-fpm restart 仅供参考.

16.jpg

配置CDN后获取访客真实IP

网站在部署CDN后,一般无法获取访客真实IP,只能获取各CDN节点IP,解决此问题可修改站点根目录下的config.inc.php添加以下代码:

if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  $list = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
  $_SERVER['REMOTE_ADDR'] = $list[0];
}

结语

感谢网友寒夜方舟的耐心解答,帮我完成了这次CDN部署.来源链接请参考:

文中提到的301跳转和强制HTTPS,可以参考以下链接:


扫描二维码推送至手机访问。

版权声明:本文由梦魁网络资源站发布,如需转载请注明出处。

本文链接:https://family.monkui.com:39/?id=211

标签: 运维部署
分享给朋友:

相关文章

Apache设置301重定向到www和强制跳转https教程

Apache设置301重定向到www和强制跳转https教程

前言本文将详解如何配置Apache的.htaccess文件来使域名跳转到www和强制跳转到https首先在建站之前,需要确认今后网站是使用类似ioiox.com一级域名,还是www.ioiox.com二级域名,根据域名长度,使用场景,域名视...

CentOS使用OneIndex部署OneDrive免费网盘教程

CentOS使用OneIndex部署OneDrive免费网盘教程

前言本文将详解如何在CentOS上使用OneIndex程序部署OneDrive免费网盘OneIndex是一款不占服务器空间,不走服务器流量,直接列出OneDrive目录,文件在线查看和直接下载的Web源码OneIndex项目地址部署流程一、...

Oracle Cloud VPS CentOS 7 升级内核并开启官方原版BBR加速

Oracle Cloud VPS CentOS 7 升级内核并开启官方原版BBR加速

前言Oracle VPS 注册了一个多月也没有时间折腾,正好昨天能够有库存创建VPS了,于是升级了内核,开启了原版BBR,记录一下流程,新手顺着命令一步步来执行即可.重要提示由于甲骨文 CentOS 7 系统更新频繁,请参考以下日期来使用2...

腾讯云SCF云函数无服务器部署OneDrive分享网盘

腾讯云SCF云函数无服务器部署OneDrive分享网盘

前言OneDrive的网盘程序介绍过很多款,但是都是需要VPS服务器来部署,本文将介绍无需服务器,使用腾讯云SCF云函数服务,即可在云端部署你的OneDrive分享云盘.部署准备获取API密钥登陆腾讯云控制台 - 访问管理API密钥管理 -...

将 docker run 命令改为 docker-compose.yml 方便部署和维护

将 docker run 命令改为 docker-compose.yml 方便部署和维护

前言使用docker run命令可以很方便的启动一个项目容器,加上一些参数能够实现所有需要的功能.但是当管理多个或者几十个容器时,可能会忘记部分参数,导致一些问题.我们可以使用docker-compose来启动容器.通过docker-com...

部署 docker 官方 registry 私有镜像仓库和镜像加速仓库

部署 docker 官方 registry 私有镜像仓库和镜像加速仓库

前言在折腾 docker 的路上,必然会遇到拉取镜像速度不理想的问题,在加上可能会需要私有的镜像仓库.而使用 docker 官方的 registry 镜像来部署服务就可以解决此两种需求.需要注意的是 : 镜像加速和私有仓库两种需求需要分别部...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。