Cloudflare 反代网站镜像的workers

Cloudflare Workers是来反代网站需要您具有一定的JavaScript和HTTP协议知识。请注意,使用此技术可能违反目标网站的服务条款。确保获得合法授权才能反代网站内容。

以下是一个基本的Cloudflare Workers脚本代码演示,它将镜像某个目标网站。这个脚本实际上是在处理请求和响应之间的转发:

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

async function handleRequest(request) {
  const url = new URL(request.url);

  // 修改以下的目标网站
  const targetDomain = 'https://example.com';

  url.hostname = targetDomain.replace(/^https?:\/\//, '');

  // 构造新的请求
  const newRequest = new Request(url, {
    method: request.method,
    headers: request.headers,
    body: request.body,
    redirect: 'manual', // 手动处理重定向,以防止自动重定向到目标网站
  });

  // 发送请求到目标网站
  const response = await fetch(newRequest);
  
  // 检查重定向
  if (response.status >= 300 && response.status < 400) {
    const location = response.headers.get('Location');
    if (location) {
      const newLocation = location.replace(new RegExp(`^${targetDomain}`), url.origin);
      return Response.redirect(newLocation, response.status);
    }
  }

  // 创建新的响应以加入自定义的修改(若有需要)
  const newResponse = new Response(response.body, response);
  newResponse.headers.set('X-Proxy-By', 'Cloudflare Workers');
  
  return newResponse;
}

 

© 版权声明
THE END
喜欢就支持一下吧
点赞7赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容