自定义 Rewrite 功能优化升级为边缘规则(EdgeRules)
前言
又拍云自定义 Rewrite 功能统一升级为边缘规则(EdgeRules),此次升级从如下几个方面进行了改进和优化:
1)在使用方式方面,新增了【通用模式】,规则的编写将会更加简单方便,降低了使用门槛;
2)规则的管理更加方便、灵活,管理界面展示了优先级、规则名称、状态等字段,操作区域支持编辑、启用、删除、关闭、测试等选项;
3)在【通用模式】下,根据使用场景,划分了 7 大功能,分别包括:添加 HTTP 头部、删除 HTTP 头部、自定义错误页面、边缘重定向、URL 改写、访问控制、请求限速;
什么是边缘规则( EdgeRules )?
又拍云 CDN 边缘网络中的智能可扩展应用程序规则可以帮助您简化内容分发业务逻辑,并提升终端用户访问体验。该规则可以快速部署且配置简单,可极大降低业务实现成本。网站及 Web 应用开发者或者安全工程师可以快速创建边缘规则集来提升网站安全及分发性能。例如,这些场景可能包括:
- 通过 URL 改写,可美化网站 URL,提升网站 SEO
- 为了节省更多访问带宽,限制网站请求下载速度
- 控制请求 URL 的结构、Header 头部等
- 自定义源站错误页面,提升终端用户体验
- 限制特定客户端的访问行为,合理进行访问控制;
如何使用?
这里以【通用模式】为例,进行相关介绍。需要实现的功能为:
当请求 URL 为“ https://www.charmelady.net/index.html ”时,302 重定向到如下地址:
https://www.charmelady.net/index.htm?remoteip=121.52.226.236
其中,302 重定向地址查询串中的 remoteip 为客户端本地 IP 地址,需要通过规则自动获取。
1)开始配置
登陆 CDN 控制台,依次进入:服务管理 > 功能配置 > 边缘规则 > EdgeRules,即可进入边缘规则管理界面,如截图所示:
点击右上角的【添加规则】,进入规则配置界面,将规则名称填写为:将请求 /index.html 进行 302 重定向,使用方式选择为:通用模式,如截图所示:
2)规则编写
该部分,需要进行【条件判断】以及【功能选择】的编辑。条件判断根据需求,需要依次判断“请求 URI” 和 “请求 Host ”是否满足要求,其次就是进行功能的选择和配置,选择【边缘重定向】功能,参照截图配置:
从截图可以看出,条件判断里面,需要同时满足请求 URI 为 “/index.html” 并且请求 Host 为 “www.charmelady.net”,才会执行后面的边缘重定向动作,重定向的规则为:
https://www.charmelady.net/index.htm?remoteip=$_IP
其中 “ $_IP ”变量用来获取客户端本地 IP 地址,调整规则优先级,点击【保存】,就可以开始测试。
3)配置测试
使用 curl 命令进行测试,查看规则执行的结果。curl 测试命令为:
curl -vo /dev/null https://www.charmelady.net/index.html
测试结果:
GET /index.html HTTP/1.1
Host: www.charmelady.net
User-Agent: curl/7.43.0
Accept: */*
HTTP/1.1 302 Moved Temporarily
Server: marco/1.11
Date: Tue, 26 Dec 2017 07:08:20 GMT
Content-Type: text/html
Content-Length: 159
Connection: keep-alive
Location: https://www.charmelady.net/index.htm?remoteip=121.52.226.236
Via: M.cun-sd-lyi1-136
X-Request-Id: bc13fdc2e4412e74ad4975b0b6643185
从以上响应结果可以看出,CDN 边缘节点成功响应了一个 302 状态给客户端,通过 Location 地址:
https://www.charmelady.net/index.htm?remoteip=121.52.226.236
可以获知,上面配置的规则成功执行,满足测试要求。
总结
这里总结下新升级的边缘规则,具有如下特性:
1)URL 美化,提升网站 SEO
可以配合网站将动态 URL 转换为语义 URL,以改善搜索引擎索引编制,从而提高 SEO 排名,也美化了 URL。
2)降低源站带宽消耗
将业务逻辑转移到边缘网络,减少了您的业务服务器到内部服务端的请求消耗,无形当中降低了源站带宽消耗,节省了成本。
3)配置简单,快速部署
在规则配置控制台,您可以即时修改和部署边缘规则;在不修改任何应用程序代码的前提下,规则可以在几秒内快速下发到所有的边缘网络中。
4)提升终端用户体验
众多业务逻辑都在 CDN 边缘节点进行处理和计算,避免了源站来回处理的往返时间,可有效提升终端用户体验。
5)简化网络操作,降低定制成本
将网站业务逻辑转移到 CDN 边缘网络,在很大程度上降低了特殊业务定制所消耗的时间,加快了定制业务的上市时间。
6)提升网站安全性
可利用 URL 改写机制将参数隐藏起来,可避免让网络上的恶意用户收集有利于发动攻击的信息。