tencent cloud

文档反馈

批量重定向

最后更新时间:2024-08-26 17:18:54
    该示例捕获传入的 HTTP 请求,并通过预定义的重定向映射表,实现了指定路径自动跳转至对应 URL,可用于网站迁移或错误页面的自定义处理。

    示例代码

    // 添加fetch事件监听器,当有请求进入时触发,使用handleRequest函数处理请求,并返回响应
    async function handleRequest(request) {
    // 定义目标外部主机名
    const yourExternalHostname = "www.example.com";
    // 创建路径到重定向URL的映射
    const redirectMap = new Map([
    ["/foo", "https://" + yourExternalHostname + "/redirect1"],
    ["/bar", "https://" + yourExternalHostname + "/redirect2"],
    ["/baz", "https://" + yourExternalHostname + "/redirect3"],
    ]);
    // 解析请求的URL
    const url = new URL(request.url);
    // 获取URL的路径部分
    const path = url.pathname;
    // 检查路径是否在重定向映射中,如果是则进行重定向
    if (redirectMap.has(path)) {
    return Response.redirect(redirectMap.get(path), 301);
    } else {
    // 如果路径不在映射中,返回404状态
    return new Response('Not Found', { status: 404 });
    }
    }
    
    // 当有请求事件发生时,使用handleRequest函数处理
    addEventListener('fetch', event => {
    event.respondWith(handleRequest(event.request));
    });

    示例预览

    在浏览器地址栏中输入匹配到边缘函数触发规则的 URL,在路径中携带/bar将实现到自动 301 重定向至 https://www.example.com/redirect2
    预览如下,当前显示 404 因目标主机名 www.example.com 路径 /redirect2 下无资源,您需按实际替换目标主机名和路径。
    
    
    

    相关参考

    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持