将不带www的域名重定向到带www的域名,有多种实现方式,本文介绍几种写法,作为参考。
首先得在你的域名管理里面做好解析,比如说我的 webyang.net和www.webyang.net 都指向我的主机ip
方法1:打开nginx.conf文件找到你的server配置段:
server
{
listen 80;
server_name www.webyang.net webyang.net;
if ($host != 'www.webyang.net' ) { rewrite ^/(.*)$ http://www.webyang.net/$1 permanent ; }
}
如果只是webyang.net跳转:
if ($host = 'webyang.net' ) { rewrite ^/(.*)$ http://www.webyang.net/$1 permanent ; }
这样用户直接访问webyang.net直接跳转的www.webyang.net。即让不带www的域名跳转到带www的域名。注意空格,否则会报错。
方法2:在配置文件里面写两个server,第一个里面把不带www的域名去掉。
server
{
listen 80;
server_name www.webyang.net;
}
在配置文件的下面添加上,这样就可以了。
server {
server_name webyang.net;
rewrite ^(.*) http://www.webyang.net$1 permanent;
}
如果有多个不同的域名都绑定在同一个目录下,不带3W的301跳转带3W的方法和上面的一样,在vhost的完整配置里后面加上。
server {
server_name a.webyang.net;
rewrite ^(.*) http://www.webyang.net$1 permanent;
}
server {
server_name b.wenyang.net;
rewrite ^(.*) http://www.webyang.net$1 permanent;
}
301永久跳转,当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息中的状态码的一种,表示本网页永久性转移到另一个地址。
302临时跳转,也是状态码的一种,意义是暂时转向到另外一个网址。
permanent代表301永久跳转,改为redirect则为302临时跳转。
修改最好nginx -t测试下是否有错误,然后再重启nginx。
已有0条评论