NGinx域名重定向

时间:2012-11-29 16:31:17

标签: redirect dns nginx

假设我有一个名为xyz.co的网站,我还有其他域名,其名称相同,如xyz.com,xyz.it,xyz.co.it

现在nginx在端口80的nginx.conf中与server_name xyz.co一起工作正常我希望所有其他域重定向到xyz.co我也希望上面的www。*版本重定向到xyz.co 。我怎么能得到这个?这个nginx网络服务器级别是否会发生变化?或者我需要在DNS中进行此更改?

更新:我在nginx.conf尝试了此操作,但没有用...

server
{
listen 80;
server_name xyz.co xyz.com, xyz.it, xyz.co.it;
rewrite ^/(.*) http://xyz.co permanent;
}

我首先尝试在ServerFault中发布此问题,但没有回复 - https://serverfault.com/questions/453472/nginx-domain-name-redirects

1 个答案:

答案 0 :(得分:4)

为需要重定向的所有域名添加一个服务器块。像这样:

server {
    listen 80;
    server_name xyz.com, xyz.it, xyz.co.it;
    rewrite ^ http://xyz.co$request_uri permanent;
}

和xyz.co域的另一个服务器块:

server {
    listen 80;
    server_name xyz.co;

    #other settings
}

这样当你去其中一个需要重定向的域名时,nginx只会重定向到xyz.co并移动到另一个服务器块,你可以在其中添加所有设置(rootfolder,location blocks等)< / p>

相关问题