本文所述基于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也可以。
我算是发现了,凡是一个操作都能写一篇文章。
呵 有些以后需要用到的东西,得记录下来,要不就忘了。
我用的BAE做重定向,不占用自己的资源
这个bae怎么做呢?
求指点哈。
不过我使用站长工具查了一下,发现我的域名竟然都是301重定向过的,可是我也没有怎么设置。