许多站长是使用 LNMP 一键安装包来搭建在云主机的上的系统环境,本人的个人小站也是如此。最近在使用腾讯云的动态加速服务,而在这个 LNMP 环境下使用踩了点坑。所以在这里本文做记录下。
关于腾讯云动态加速 DSA
官方介绍:https://cloud.tencent.com/product/dsa
动态加速网络(Dynamic Site Accelerator,DSA)为您提供稳定、安全的动态请求加速服务。DSA 通过遍布全球的优质节点,结合腾讯自研的最优链路算法及协议层优化,使动态内容通过安全可靠的最优传输路径快速分发给用户。DSA 为您解决跨运营商、跨国、网络不稳定等因素导致的响应慢、丢包、服务不稳定等问题。
动态加速与传统的静态加速(即 CDN,内容分发网络)并不是“类似”的关系,简单用一个比喻做对比。假设用户跟你访问内容间的访问路径是一条长达1公里的道路, CDN 相当于将你的访问内容做个镜像并放到了0.5 公里处。而动态加速则是将你原来的访问方式由三轮车变成小货车。
LNMP 使用动态网络的姿势
上次我在自己的云主机上安装了 LNMP 一键安装包,并尝试使用腾讯云动态加速 DSA。当我在腾讯云管理台进行好相应的设置后,发现加速域名虽然能访问,但访问的内容是另外一个网站的。简单来说我想加速的源站是 a.com,加速域名是 b.com,但实质访问 b.com 的时候发现页面上的内容却是c.com 的;已知 a.com 与 c.com 都是绑定在同一台云主机。
后台经过发工单与腾讯云客服沟通,才发现正确是姿势是这样的:
1)腾讯云管理台进行好相应的设置,即设置好源站与加速站点相关信息,CNAME 绑定好。
2)在 Nginx 上关于对 a.com 的 conf 文件(在 /usr/local/nginx/conf/vhost/
目录下)做如下修改:
原来:
代码语言:txt复制server
{
....
server_name a.com;
....
}
应该改成:
代码语言:txt复制server
{
....
server_name a.com c.com;
....
}
保存后重启 Nginx 生效。
修改后可以通过如下方式判断是否生效:本地 hosts 的方式解析加速域名 c.com 到你的机器上,此时访问c.com 是展示源站 a.com 的内容即可。
3)解除 hosts 的本地绑定(如果有),此时就能正常使用动态加速了。
代码语言:txt复制