是否可以使用If从Nginx配置文件中的变量中提取值?

    if ($http_referer ~* (?<=url=)([\w-.]*)(?=/) ){
            set $proxied $1;
            rewrite (?<=/)(.+\.(css|jpg|png|gif|js)) http://$proxied/$1 redirect;

     }

谢谢

#1楼 票数:5 已采纳

是。 http://nginx.org/r/map

map $http_referer $proxied {
    default  example.com;
    "~*(?<=url=)(?<p>[\w-.]*)(?=/)" $p;
}

  ask by silkAdmin translate from so

未解决问题?本站智能推荐:

1回复

Nginx使用通配符wordpress重定向字符串变量

我在谷歌搜索控制台中有一堆这种奇怪的 404 错误,而我的网站中不存在该 URL,我需要将它们重定向到我的主页。 我已经做了这两次尝试,但它不起作用 是否可以用一张通配符重定向它?
1回复

重定向Nginx查询字符串

我们发送的通讯带有错误的查询字符串,我们需要重定向到nginx中的有效查询字符串 https://www.example.com/foo?categories=39%3Futm_source%3Dbar需要重定向到https://www.example.com/foo?categories=
1回复

nginx301重定向查询字符串

目前我的nginx.conf文件中有类似的内容: 问题是查询字符串是从/ old / page?ref = xx URL中删除的。 是否可以使用我上面使用的重定向方法包含查询字符串?
1回复

基于特定查询字符串的Nginx重定向

我正在尝试根据特定的查询字符串进行重定向: https://foo.com/wp-login.php?action=注册到https://foo.com/account/
1回复

Nginx在重定向上复制查询字符串

我正在尝试重定向来自包含“www”的网址的所有流量。 对于不包含它的类似url,但是当我这样做时,Nginx会在url的末尾附加一个重复的查询字符串。 例如,用户输入: 他们被重定向到: 这是我的配置: 我试过附加'?' 到'request_uri'部分之后的重定向结束,因为
1回复

在NGINX脚本中处理重定向字符串,可能吗?

我正在寻找一个“完整的 NGINX 解决方案”,没有中间重定向......但我需要“我的名称解析器”进行一些外部处理,如这个execute幻想所示: 那么,有可能做这样的事情吗? 也许使用一种fastcgi_pass但只返回一个字符串,而不是绕过所有 HTTP 解析。
1回复

Nginx替换查询字符串重定向

我们之前在apache上运行,并使用以下代码重定向/替换了我们的查询参数之一。 这将成功重定向以下URL 至 我使用了产生以下内容的htaccess重定向转换器。 这不行 任何帮助表示赞赏 谢谢
1回复

Nginx从重定向中排除查询字符串url

我目前正在将我的根域重定向到一个子文件夹。 但是,我想排除用于 ajax 调用的查询字符串 url (www.example.com/?act=12)。 但是,我不确定如何在 nginx 中执行此操作。 这是我当前的 nginx 配置文件 任何帮助将不胜感激。