【发布时间】:2017-02-24 12:12:24
【问题描述】:
所以我在 nginx 中定义了一个虚拟主机,它应该重定向到两个不同的域。任何使用 domain-x.com 的 URL 都应该重定向到 domain-a.com,但 domain-x.com/info 应该重定向到 domain-b.com/info。我已经尝试过两种不同的方式。
一般我的条目是这样的:
server {
listen 80;
server_name domain-x.com www.domain-x.com;
location ...
return 307 $scheme://domain-a.com$request_uri;
}
这使得来自domain-x.com 的一般重定向在一定程度上起作用。对于location,我尝试了两种重定向方式:
location /info/ {
return 307 $scheme://domain-b.com/info;
}
和:
location /info/ {
proxy_pass http://domain-b.com/;
}
我也用location = /info/ 尝试过,但无济于事。
我遇到的问题是任何像domain-x.com/something 这样的URL 都被重定向到[IP]something(IP 是运行nginx 的服务器的地址),这也适用于/info,它最终是[IP]info。当我输入 [IP]/info 时,重定向按预期工作。你能帮我解决我的问题吗?
【问题讨论】:
标签: redirect nginx nginx-location