将未定义的子域重定向到nginx中的主域?

时间:2014-03-04 10:52:06

标签: redirect nginx subdomain

我想将未定义的子域重定向到我的主域。 所以我有一个站点domain.com,我有2个子域名:sub1.domain.com和sub2.domain.com。 我想要的是,当有人试图转到sub4.domain.com时,它在nginx中不匹配并将其重定向到domian.com。这可以实现吗?

1 个答案:

答案 0 :(得分:-1)

这将重定向任何子域请求。 对于所有现有子域,您必须添加server条目。

# this will catch all subdomains and redirect to main domain.
server {
  server_name *.domain.com;
  return 301 http://domain.com$request_uri;
}

# this block will be used for sub1.domain.com;
server {
  server_name sub1.domain.com;
  ...
}

# this is for sub2.domain.com;
server {
  server_name sub2.domain.com;
  ...
}

# and so on...

nginx不知道哪些子域存在,哪些不存在。所以你必须明确地命名所有这些。