部署 www.xxx.com 怎么 301 定位到 xxx.com

zealinux · January 07, 2013 · Last by ywencn replied at January 08, 2013 · 26921 hits

服务器使用的是 nginx+passenger

现在在外面看起来一个 ip 地址挂了两个服务器。 一个带有 www,二级域名,另一个不带。

这个该怎么配置

Nginx 配置

server {
  listen 80;
  location / {
    rewrite  ^/(.*)$  http://ruby-china.org/$1  permanent;
    proxy_set_header Host "ruby-china.org";
  }
}

再提供一个备选

server {
    listen    80;
    server_name ruby-china.org;
    rewrite ^ http://www.ruby-china.org$request_uri? permanent;
}

# other server...
server {
    listen 80;
    server_name www.ruby-china.org;
    ....
}

@huacnlee 这一个出问题,“发生太多重定向”

server {                                                                                                                                                                                               
    listen 80;
    server_name www.xxx.com;
    rewrite ^/(.*) http://xxx.com/$1 permanent;                                                                                                                                                   
 }  

@quakewang 还是不行 @wppurking bingo! 成了

谢谢大家。

哦,对了,我忘了说明了,我那个这么写是为了让 IP 以及其他一些未定义的域名的访问也 301 到 ruby-china.org

@huacnlee 你那个需要有个 default 的 server block 去匹配不转向的那个域名

的确,我的配置使用的是 listen 80 default; 让他匹配 IP 过来的请求

你域名真好啊

You need to Sign in before reply, if you don't have an account, please Sign up first.