因为之前一直用的虚拟主机,做301转向很简单,直接在.htacess里边修改或者去CPANEL里边做Redirect就可以了,现在买了VPS,却不知道从何下手,在网上搜索了几篇文章。终于搞明白如何在LNMP环境下配置VPS的301转向了。
我的目的是要把不带 www 的域名转到带 www 的域名上边,例如将 forece.net 转到 wwww.forece.net
用SFTP连接VPS,首先打开/usr/local/nginx/conf/vhost/www.forece.net.conf (这里你会看到自己的域名)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | server { listen 80; server_name www.forece.net; index index.html index.htm index.php default.html default.htm default.php; root /home/wwwroot/forece.net; include none.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; } |
这段代码的最后加入
1 2 3 4 | server { server_name forece.net; rewrite ^(.*) http://www.forece.net$1 permanent; } |
大家注意,如果原代码server_name后面有2个地址,包括了不带www的地址,请先删除之!
另外,修改完成后,请重启LNMP。
1 | /root/lnmp restart |