在nginx中重定向网址

时间:2010-08-19 07:03:36

标签: nginx

我有问题。 我的应用服务器是nginx,托管我的博客。 当我使用此网址访问我的站点地图时: http://www.ikbear.com/sitemap.xml,它有效。但是当我使用此网址访问我的站点地图时: http://ikbear.com/sitemap.xml,它不起作用。所以我想将http://ikbear.com/sitemap.xml重定向到http://www.ikbear.com/sitemap.xml,你能告诉我怎样才能在nginx中做到这一点?谢谢!

1 个答案:

答案 0 :(得分:2)

实际上,我打算猜测一下,你将在重定向该网址时遇到同样的问题。

首先,这是基本重定向的语法:

server {
    # ... 

    # redirect sitemap.xml to sitemap.xml.php
    rewrite ^(/sitemap.xml)$ /sitemap.xml.php;

    # ... 
}

可能对您有用的是wwwnot-www正确投放。一个常见的策略是将所有www提供给non-www,反之亦然。这是一个例子:

server {
    listen 80;
    server_name www.mydomain.com;

    # forward everything from www.domain.com to domain.com
    rewrite ^(.*) http://domain.com$1 permanent;
}

server {

    listen 80;
    server_name  domain.com *.domain.com;

    location / {
            root   /var/www/domain/htdocs;
            index  index.html index.htm index.php;

            # ... etc.
    }
}