网站www和springboot的301重定向实现
一、加www和不加www的区别
很多网站在打开时,地址栏里的域名有的带有“www.”,而有的网站前面则没有带“www.”,有些网站可以用这两个域名都能访问。
不加“www.”的域名是主网站也称为裸域,加上“www.”的域名,就相当于是一个二级域名,从优化的角度来讲,加上“www.”就会分散主网站的权重。
加上“www.”比较符合咱们国人的习惯,分散权重只是一小部分的,毕竟权重分来分去还是分在你的网站上。最重要的就是多做一些高质量的反链。
裸域的cookie的作用域比较大,如果seaxiang.com使用裸域,那么frp.seaixang.com,foo.seaxaing.com都会带上seaxiang.com里设置的cookie。
二、怎样选择
可以看到现在很多大网站同时提供裸域和www访问。比如访问baidu.com会跳转到www.baidu.com。我们也可以实现这种跳转方式。
三、springboot实现301跳转
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
/**
* 裸域请求301转发,优化seo
*/
@Component
public class WWWIntercepter implements HandlerInterceptor {
private String site = "http://seaxiang.com";
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
if (request.getRequestURL().indexOf(site) == 0) {
//以http://seaxiang.com 域名开头的请求全部301跳转以https://www.seaxiang.com开头
String address = (request.getRequestURL() + "").replaceAll(site, "https://www.seaxiang.com");
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
response.setHeader("Location", address);
}
return true;
}
}
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦