当前位置:爱推吧 » 免费空间与域名 » VPS LNMP下带www与不带www的301重定向设置方法

VPS LNMP下带www与不带www的301重定向设置方法

本文所述基于Centos的VPS(LNMP)环境。域名以ituibar.com为例。

一、实现效果:不带www的域名,自动跳转到带www的域名。(例如:输入ituibar.com,自动跳转到www.ituibar.com)

为了更好的提高网站的权重,以及对搜索引擎友好(SEO),我们常常需要设置域名带www为标准网址。这时候需要使用301永久重定向。

在LAMP中是使用.htaccess文件放置在网站根目录的方法来达到伪静态和域名重定向,而在LNMP中不能建立.htaccess文件,只能修改.conf文件。

.conf文件放在 /usr/local/nginx/conf/vhost/ 目录中,以你建立主机时候设置的域名为文件名,例如:/usr/local/nginx/conf/vhost/ituibar.com.conf 。

登录VPS后,使用 vi /usr/local/nginx/conf/vhost/ituibar.com.conf 即可进入编辑.conf文件状态。

打开文件后可以看到文件内容大致如下:

server
{
 listen 80;
 server_name www.ituibar.com ituibar.com;
 index index.html index.htm index.php default.html default.htm default.php;
 root /home/wwwroot/ituibar.com;
 include wordpress.conf;
 location ~ .*\.(php|php5)?$
 {
 try_files $uri =404;
 fastcgi_pass unix:/tmp/php-cgi.sock;
 fastcgi_index index.php;
 include fcgi.conf;
 }
 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
 {
 expires 30d;
 }location ~ .*\.(js|css)?$
 {
 expires 12h;
 }access_log off;
}

去掉第4行“  server_name www.ituibar.com ituibar.com;” 中的ituibar.com

然后在在.conf文件中,最后加上如下代码:

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

修改完成后,需要重新启动一下LNMP,命令如下:

/root/lnmp reload

二、实现效果:带www的域名,自动跳转到不带www的域名。 

去掉第4行“  server_name www.ituibar.com ituibar.com;” 中的www.ituibar.com

然后在在.conf文件中,最后加上如下代码:

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

修改完成后,需要重新启动一下LNMP,命令如下:

/root/lnmp reload

至于怎么编辑www.ituibar.com.conf文件,你用winscp可以,直接在命令行用vi也可以。

4 个吐槽 on “VPS LNMP下带www与不带www的301重定向设置方法”

    1. 这个bae怎么做呢?
      求指点哈。
      不过我使用站长工具查了一下,发现我的域名竟然都是301重定向过的,可是我也没有怎么设置。

发表评论

电子邮件地址不会被公开。 必填项已用*标注