Nginx站点配置禁用301重写另一个站点

时间:2013-08-26 17:37:13

标签: redirect nginx http-status-code-301

我目前在nginx中有两个已启用的网站配置,我们称之为old-site.examplenew-site.example。没有其他站点配置处于活动状态。

old-site.example应该301重定向到new-site.example。只要old-site.example配置是唯一的,这当前效果很好。添加new-site.example配置文件后,它不再重定向。

oldsite.conf

server {
        listen 80;
        server_name *.old-site.example;
        rewrite_log on;
        location / {
                return 301 http://www.new-site.example$request_uri;
        }

}

newsite.conf

server {
    listen       80;
    server_name  www.new-site.example;

charset utf-8;

    location / {
        #forward to application server
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://127.0.0.1:8080;
    }
}

其他配置细节:

  • JBoss AS7作为运行Nginx 1.5.1
  • 的应用服务器

1 个答案:

答案 0 :(得分:0)

这是与DNS相关的错误,对不起大家。

背景:客户端的ISP设法“智能地重定向”域而不是使用DNS。他们基本上在他们的服务器上删除了新站点,并通过旧域返回。我无言以对。

如果您遇到这样的问题,请在第二次猜测配置之前检查DNS解析。