关于java:JavaWeb利用Request制作防盗链

什么是盗链?

盗链是指服务提供商本人不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),间接在本人的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益。

如何避免盗链?
申请头中一个Referer元素,设置失常通过www.163.com拜访这个新闻时,这个元素为163,如果Referer不为163,或者Referer为空,则为盗链,会间接跳到www.163.com的主页上。

163主页:
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
      <h1>网易新闻</h1><hr>
      广告广告广告广告广告广告广告广告
      <a href="/Day04/servlet/RenzhengfeiServlet">任正非独家采访</a>
      广告广告广告广告广告广告广告广告
  </body>
</html>

RenzhengfeiServlet:
public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException {
            response.setContentType("text/html;charset=utf-8");
             String ref = request.getHeader("Referer");
//如果referer为空或不为163,则重定向回163的主页
             if(ref==null || "".equals(ref) || !ref.startsWith("http://www.163.com")){
             response.sendRedirect(request.getContextPath()+"/index.html");
                 return;
        }
             response.getWriter().write("任正非会议..我和华为的时光......");
    }

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理