返回

函数计算静态网站 CDN 的若干注意事项

见解分享

最近在优化测试阿里云的函数计算和 CDN 的配合使用时发现了一个需要额外注意的地方。

我们知道,函数计算支持静态网站部署,也就是说,我们可以直接将网站的静态资源(HTML、CSS、JavaScript、图片等)上传到函数计算,然后通过访问函数计算的域名来访问这些静态资源。

但是,如果我们想使用 CDN 来加速这些静态资源的访问,就需要注意以下几点:

  1. CDN 需要对函数计算的域名进行CNAME解析

    在 CDN 上配置加速域名时,我们需要将 CDN 的 CNAME 指向函数计算的域名。例如,如果函数计算的域名是 www.example.com,那么我们需要将 CDN 的 CNAME 指向 www.example.com

  2. CDN 需要对函数计算的域名启用 HTTPS

    为了确保数据传输的安全,我们需要在 CDN 上对函数计算的域名启用 HTTPS。在 CDN 上配置加速域名时,我们需要选择 “HTTPS” 协议,并上传函数计算域名的 SSL 证书。

  3. CDN 需要对函数计算的域名配置缓存规则

    在 CDN 上配置加速域名后,我们需要为函数计算的域名配置缓存规则。在 CDN 上配置缓存规则时,我们需要选择 “静态缓存” 规则,并设置合适的缓存时间。

  4. 需要正确设置CDN回源地址

    配置CDN回源地址时,必须使用与函数计算域名相同的域名,且回源地址必须包含整个函数计算的域名地址。正确的回源地址格式为:https://www.example.com/www.example.com替换为实际的函数计算域名)

  5. CDN 需要对函数计算的域名进行预热

    在 CDN 上配置加速域名后,我们需要对函数计算的域名进行预热。预热是指将函数计算的域名下的静态资源预先加载到 CDN 的边缘节点上,以便当用户访问这些资源时,可以从 CDN 的边缘节点上直接获取,从而减少访问延迟。

  6. 使用自有源站

    如果网站使用了CDN的加速,那么使用oss部署静态网站时一定要选择自有源站,否则会导致CDN加速无法生效。

  7. 函数计算对象存储访问权限

    函数计算使用存储桶中的对象作为函数的代码,而 CDN 则使用存储桶中的对象作为网站资源。要使 CDN 能够访问存储桶中的对象,您需要在存储桶中为 CDN 用户授予读取权限。有关如何授予读取权限的说明,请参阅阿里云网站上文档:如何控制对存储桶的访问。

  8. CDN 缓存的时效性

    CDN 会将资源缓存一段时间,以减少服务器的负载并提高网站的速度。缓存的时效性取决于 CDN 配置的缓存规则。您可以通过 CDN 控制台或 API 来配置缓存规则。

了解了这些注意事项,就可以在阿里云的函数计算和 CDN 的配合使用中避免出现一些常见的问题。