0

是否可以根据访问者的推荐人有条件地重定向?

我想要做的是重定向来自特定域(和/或任何其他子域)的用户,如果没有引荐来源或域不匹配,则不应应用重定向。

我在考虑使用 getServerSideProps()。

4

1 回答 1

1

这样的逻辑读取标头需要在某个服务器上,并且您应该能够在中间件中读取引用者,您也可以在其中处理重定向。这在理论上应该有效:

// pages/_middleware.ts
import type { NextRequest, NextResponse } from 'next/server';

export function middleware(req: NextRequest) {
  console.log('referrer', req.referrer); // do your domain parsing / regex here

  // redirect with NextResponse.redirect()
}

推荐人的可靠性存在固有限制,因为该值可能对您不透明

我首先会质疑这种源嗅探和条件重定向的用例。

于 2022-01-28T18:40:21.037 回答