nginx位置重写不匹配

时间:2017-08-09 13:50:05

标签: nginx url-rewriting

在我们的nginx配置中,我们定义了以下重写以将请求转发到另一个域:

location /service {
  rewrite ^/service/(.*)$ https://newdomain.com/service/$1 redirect;
}

它匹配http://www.example.com/service/test123之类的网址,但以下网址不匹配:

https://www.example.com/service/imprint/acc/123456/ext_css/http://www3.example.com/formulare/css/service.css

是的/ / ext_css /之后还有第二个网址,我们现在认为不正确,但目前无法改变这一点。

有没有办法将整个路径完全转发到新服务器?

/service/imprint/acc/123456/ext_css/http://www3.example.com/formulare/css/service.css

1 个答案:

答案 0 :(得分:0)

在位置区之外进行操作就可以了。

而不是

location /service {
  rewrite ^/service/(.*)$ https://newdomain.com/service/$1 redirect;
}

我们现在只有

rewrite ^/service/(.*)$ https://newdomain.com/service/$1 redirect;

现在它匹配/service/

之后写的所有内容