请坚持使用 Cloudflare 工作人员批量源代理

时间:2021-05-16 11:41:33

标签: cdn cloudflare cloudflare-workers webflow

我需要一些有关 Cloudflare 工作人员的帮助。我不是任何想象力的开发人员,也使用 Webflow,因此没有代码,但我有一个 Webflow 项目,我需要在该项目中从站点中挤出每一盎司的速度,我首先在我的域上进行尝试.

我已经为该项目设置了一个 Pro Cloudflare 帐户,但我的问题是 Webflow 将 css、字体和最重要的图像等所有资产保留在 assets.website-files.com(他们的 CDN)和不是我真正的 domain,所以 Cloudflare 没有缓存或应用任何性能增强的图像等......因为 assets.website-files.com 不是我的域的一部分,正如您从屏幕截图中看到的: Dr.Falre

我联系了 Cloudflare,他们向我发送了这个 Cloudflare Workers 脚本,但就像我说的,这里没有代码经验,所以这里的任何人都可以帮助我使用 Cloudflare 的这个脚本:

/**
 * An object with different URLs to fetch
 * @param {Object} ORIGINS
 */
const ORIGINS = {
  "starwarsapi.yourdomain.com": "swapi.dev",
  "google.yourdomain.com": "www.google.com",
}

async function handleRequest(request) {
  const url = new URL(request.url)
  // Check if incoming hostname is a key in the ORIGINS object
  if (url.hostname in ORIGINS) {
    const target = ORIGINS[url.hostname]
    url.hostname = target
    // If it is, proxy request to that third party origin
    return await fetch(url.toString(), request)
  }

  // Otherwise, process request as normal
  return await fetch(request)
}

addEventListener("fetch", event => {
  event.respondWith(handleRequest(event.request))
})

任何帮助将不胜感激。

0 个答案:

没有答案