将 Subdomain 和 Cloudflare 合并为免费图像 CDN

“CDN”对于你来说可能已经不再陌生了。 CDN帮助网站大大减少请求数量,同时也帮助网站加载速度更快。这也或多或少地影响了 Google Speed Insights、GTmetrix 等速度测量工具的分数……
在线搜索,您会发现很多关于如何设置 CDN 的文章。每种工具都有优点和缺点。在本文中,我将向您展示如何使用 W3 Total Cache 插件将子域用作 Cloudflare 的免费图像 CDN。
为了清楚地理解它是如何工作的,我将实现过程总结如下:
您仍然可以使用主网站当前的托管作为 CDN。我利用免费托管来存储图像。您可以咨询 123主机 或者 阿兹迪吉.
将子域名的 DNS 记录指向辅助主机的步骤您可以自己完成或参考网上。操作与指向主域名相同。我不会再指导你了。
如果您仅对子域使用 CDN,则无需添加 2 条 A 和 CNAME 记录或完全关闭它 金云 (代理)为主域。
别忘了打开模式 缓存所有内容 在 Cloudflare 中。
关于在子域上保存图像的文件夹结构。请按照主网站上的方式进行设置。
例如,主网站上的图片链接是:
domain.com/wp-content/uploads/2023/10/abc.jpg
那么CDN的图片链接是:
cdn.domain.com/wp-content/uploads/2023/10/abc.jpg
然后你需要创建一个帐户 文件传输协议 填充 W3 Total Cache 插件。
1. 表现 → 常规设置 → CDN.
2. 移至项目 CDN 设置详细信息。
3. 因为我只想为图像创建 CDN,而不包含 css、js...所以我会检查它 托管自定义文件.
4. 向下滚动到该部分 先进的 寻找 自定义文件列表。为图像创建 CDN,因此我将按如下方式填写此部分:
5. 部分 配置:对象 填写FTP配置信息。
6. 因为这些选项对我来说不是必需的,所以我将它们全部留空。
从现在开始,每次您上传新图片时,W3 Total Cache 都会自动将该图片推送到辅助托管。
要检查站点地图中的图像网址,请访问帖子的站点地图链接。正如我的是 https://artru.net/post-sitemap.xml
然后右键→选择 查看页面源代码 (或按快捷键 Ctrl + U)。不配置时,图片url仍然是原来的url。
您需要将此代码插入到文件中 函数.php 主题或代码片段插件的。这是Rank Math提供的过滤器,如果你使用其他SEO插件,也可以找到类似的文档。
排名数学来源: 过滤以在站点地图中添加 CDN 图像 URL.
代替 domain.com
与您的域名。
/**
* Filter to Add CDN Image URLs in the Sitemap
*
* @param string $src Image URL.
* @param object $post Post object.
*/
add_filter( 'rank_math/sitemap/xml_img_src', function( $src, $post ){
$src = str_replace( 'http://domain.com', 'https://cdn.domain.com', $src );
return $src;
}, 10, 2);
要创建新的站点地图,您需要进入 站点地图设置 Rank Math → 增加或减少数字 每个站点地图的链接 并按下 保存更改.
这可能是人们很少关注的部分。但是,如果设置不正确,CDN 图像将被视为重复内容,因为原始 url 的图像仍在被索引。
为了更好地了解Canonical对SEO的影响,请参考内容 如何使用 rel="canonical" 和其他方法指定规范 由谷歌。
为此,请访问该部分 变换规则 → 修改响应头 在 Cloudflare 中。
你可以参考我的Canonical配置。
(starts_with(http.request.full_uri, "https://cdn.artru.eu.org/wp-content/uploads/"))
表示以以下开头的 URL https://cdn.artru.eu.org/wp-content/uploads/
将应用规范配置。
接下来选择 设置动态
Link
concat("<https://artru.net", http.request.uri.path, ">;", "rel='canonical'")
.https://artru.net/wp-content/uploads/
被视为根 URL https://cdn.artru.eu.org/wp-content/uploads/
.要进一步检查,您应该打开带有 CDN url 的图像文件。按 F12(开发工具)。
因为整个文件是静态的,变化很小。您应该将 Cache Browser(用户浏览器缓存)的最高过期时间设置为 1 年,将 Cache Edge(Cloudflare 的 Hosting 缓存时间)设置为 1 个月。
因为缓存是长期保存的。如果您更改图像但保持文件名不变,则必须清除 Cloudflare 中的缓存才能应用所有更改。
相关文章