首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用302通过nginx重定向的掩蔽链接不工作

用302通过nginx重定向的掩蔽链接不工作
EN

Server Fault用户
提问于 2021-02-22 02:31:16
回答 1查看 764关注 0票数 0

我试图掩盖一个附属链接,所以我想要一个302重定向通过nginx

我希望将所有/go链接重定向到相应的附属链接,因此所有链接重定向都像mydomain.com/go/affiliate重定向到> https://www.affiliatelink.com

现在这就是我所拥有的

代码语言:javascript
运行
复制
location /go {
                rewrite ^/affiliate$ https://www.affiliatelink.com redirect; 
     }

我什么都试过了,但我似乎无法使它发挥作用。有我需要做的特定文件吗?

我已经试过/sites-enabled/default/conf.d/nginx.conf

EN

回答 1

Server Fault用户

回答已采纳

发布于 2021-02-22 04:14:34

您的重写不起作用,因为您请求的URL路径是/go/affiliate,但是rewrite匹配精确的路径/affiliate,这在location /go中是永远找不到的。修复这个问题很简单,但出于性能原因,您应该尽可能避免regex。

不要使用这种rewrite,而是使用两种替代方法中的一种:

  1. 如果您只有几个URL路径要匹配,则对每个路径使用一个location:location /go/代销商{返回302 https://affiliate.example.com/;}
  2. 如果您有大量的链接,我会说超过7个左右,使用map代替。映射$uri $aff_redirect { default“;"/go/affiliate”"https://affiliate.example.com/“;# more链接}A map进入任何server块之外的http块。要使用它,请检查适当的server块中的$aff_redirect变量。如果($aff_redirect) {返回302 $aff_redirect;}
票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1054552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档