nginx和apache下对域名进行301重定向-优化篇

一般网站为了将网站的权重从yoursite.com自动转向到www.yoursite.com,这里我们在nginx下来实现永久跳转.

将不带WWW的主域名重定向到带WWW的二级域名,实现两个域名合并,方法如下:

Nginx配置方法:

方法1:

server {

server_name www.yoursite.com yoursite.com;

if ($host != ‘www.yoursite.com’ ) {

rewrite  ^/(.*)$  http://www.yoursite.com/$1  permanent;

}

}

方法2:

类似apache,单独给yoursite.com做一个虚拟主机

server {

server_name  yoursite.com;

rewrite ^(.*) http://www.yoursite.com$1 permanent;

}

Apache虚拟主机配置:

<VirtualHost *:80>

DocumentRoot /data/www/www.yoursite.com

ServerName www.yoursite.com

DirectoryIndex index.html index.htm  index.php index.shtml

ErrorDocument 404 http://www.yoursite.com/404.html

</VirtualHost>

其中,permanent参数是可选的,作用是返回给浏览器一个301状态,如果没有这个参数,则返回是302状态。

301和302的区别在于前者是永久重定向,后者是临时重定向。一般域名转向多是永久性的。

Leave a Reply