NGINX域名301重定向的正确配置方案
发布于 分类 Nginx
29天前 有1个用户阅读过
通常针对域名做301重定向主要是为了SEO!比如将不带www的域名通过301重定向到www的域名下。
NGINX下的301方式主要有2种方案,
方案一:一个Server
server {
listen 80;
server_name www.seonoco.com seonoco.com;
if ($http_host = seonoco.com) {
rewrite (.*) http://www.seonoco.com$1;
}
...
}
方案二:两个Server
server {
listen 80;
server_name seonoco.com;
return 301 http://www.seonoco.com$request_uri;
}
server {
listen 80;
server_name www.seonoco.com;
...
}
根据NGINX的官方文档介绍,方案一这种做法是错的,复杂而且低效。
http://nginx.org/en/docs/http/converting_rewrite_rules.html
其实即使是我在知道这个情况后,我其实我很长一段时间都是用的方案一,因为我觉得似乎同一个Server的配置可读性似乎更高,另外好像也没低效到哪里去。
好吧,我决定以后还是用官方推荐的方案!
-- The End --