如何重定向mydomain.com
和任何子域*.mydomain.com
以www.adifferentdomain.com
使用 NGINX?
问问题
227435 次
8 回答
335
server_name支持使用 .mydomain.com 语法的后缀匹配:
server {
server_name .mydomain.com;
rewrite ^ http://www.adifferentdomain.com$request_uri? permanent;
}
或在任何版本 0.9.1 或更高版本上:
server {
server_name .mydomain.com;
return 301 http://www.adifferentdomain.com$request_uri;
}
于 2011-05-18T13:28:09.780 回答
29
server {
server_name .mydomain.com;
return 301 http://www.adifferentdomain.com$request_uri;
}
http://wiki.nginx.org/HttpRewriteModule#return
和
于 2014-04-17T14:48:00.340 回答
17
如果可以,为什么要使用重写模块return
?从技术上讲,return
它是重写模块的一部分,您可以在此处阅读,但这个片段更容易阅读恕我直言。
server {
server_name .domain.com;
return 302 $scheme://forwarded-domain.com;
}
你也可以给它一个 301 重定向。
于 2014-02-12T19:55:47.617 回答
11
这应该通过HTTPRewriteModule工作。
从 www.example.com 重写为 example.com 的示例:
server {
server_name www.example.com;
rewrite ^ http://example.com$request_uri? permanent;
}
于 2011-05-18T12:59:17.460 回答
10
如果您想将“domain1.com”的请求重定向到“domain2.com”,您可以创建一个如下所示的服务器块:
server {
listen 80;
server_name domain1.com;
return 301 $scheme://domain2.com$request_uri;
}
于 2017-01-06T10:37:22.627 回答
7
我正在为我的网站使用此代码
server {
listen 80;
listen 443;
server_name .domain.com;
return 301 $scheme://newdomain.com$request_uri;
}
于 2020-10-21T05:53:04.833 回答
3
您可以简单地在 server {} 块内编写一个 if 条件:
server {
if ($host = mydomain.com) {
return 301 http://www.adifferentdomain.com;
}
}
于 2020-06-01T05:39:05.410 回答
2
临时重定向
rewrite ^ http://www.RedirectToThisDomain.com$request_uri? redirect;
永久重定向
rewrite ^ http://www.RedirectToThisDomain.com$request_uri? permanent;
在特定站点的 nginx 配置文件中:
server {
server_name www.example.com;
rewrite ^ http://www.RedictToThisDomain.com$request_uri? redirect;
}
于 2018-10-02T09:50:54.987 回答