我的漫漫程序之旅

          專注于JavaWeb開發
          隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0

          導航

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(39)

          隨筆檔案(43)

          文章分類(304)

          文章檔案(257)

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          簡單的防盜鏈過濾器

          簡單的防盜鏈過濾器代碼,保護cwb目錄和dir2目錄下的zip文件不被盜鏈。
          一、web.xml文件
          <?xml version="1.0" encoding="ISO-8859-1"?>
          <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
          xmlns:xsi
          ="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation
          ="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
          version
          ="2.4">

          <display-name>Welcome to Tomcat</display-name>
          <description>
            Welcome to Tomcat
          </description>
          <filter>
            
          <filter-name>SecurityFilter</filter-name>
            
          <filter-class>example.SecurityFilter</filter-class>
          </filter>

          <filter-mapping>
            
          <filter-name>SecurityFilter</filter-name>
            
          <url-pattern>/dir2/*</url-pattern>
          </filter-mapping> 
          <filter-mapping>
            
          <filter-name>SecurityFilter</filter-name>
            
          <url-pattern>/cwb/*</url-pattern>
          </filter-mapping> 

          <servlet> 
            
          <servlet-name>log4j-init</servlet-name> 
            
          <servlet-class>example.Log4jInit</servlet-class> 
            
          <init-param> 
              
          <param-name>log4j</param-name> 
              
          <param-value>WEB-INF/log4j.properties</param-value> 
            
          </init-param> 
          <load-on-startup>1</load-on-startup> 
          </servlet> 

          </web-app>


          二、過濾器代碼
          package example;

          import javax.servlet.Filter;
          import javax.servlet.FilterConfig;
          import javax.servlet.ServletRequest;
          import javax.servlet.ServletResponse;
          import javax.servlet.FilterChain;
          import javax.servlet.ServletException;
          import javax.servlet.http.*;
          import java.io.IOException;
          import java.util.Iterator;
          import java.util.Set;
          import java.util.HashSet;
          import org.apache.log4j.*;


          public class SecurityFilter implements Filter {
              
              
          private static final String JAVA3Z_URL = "http://www.java3z.com/cwbwebhome/index.html";
                  
          private static final String K_URL="http://www.xxx.com/index.html";
              
              
                
          private Logger logger = Logger.getLogger("this.SecurityFilter");
              
              
              
              
          /**
               * Initializes the Filter.
               
          */

              
          public void init(FilterConfig filterConfig) throws ServletException {
                  
                  
              }

              
              
          /**
               * Standard doFilter object.
               
          */

              
          public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
                      
          throws IOException, ServletException {
                
          //logger.info("doFilter");
                   HttpServletRequest req1=(HttpServletRequest)req;
                   HttpServletResponse res1
          =(HttpServletResponse)res;
                String contextPath 
          = req1.getContextPath();    
                String requestUri 
          = req1.getRequestURI();
                
          //logger.info("requestUri = " + requestUri);

                   String referer
          =req1.getHeader("Referer");
                   
                   
          if(referer!=null&&referer.indexOf("www.java3z.com"< 0&&referer.indexOf("www.xxx.com"< 0){
                      
                  
          if(requestUri.indexOf("cwb")!=-1){
                           res1.sendRedirect(JAVA3Z_URL);
                        }
          else{
                            res1.sendRedirect(K_URL);
                        }

                   }
          else{
                             chain.doFilter(req, res);
                  }

              }

              
              
          public void destroy() {} 
              
              }




          posted on 2008-02-17 22:14 々上善若水々 閱讀(2081) 評論(0)  編輯  收藏 所屬分類: JavaWeb

          主站蜘蛛池模板: 遂平县| 镇康县| 惠州市| 永嘉县| 图木舒克市| 莆田市| 泰顺县| 阿克陶县| 色达县| 二连浩特市| 保康县| 鹤庆县| 锦州市| 大丰市| 宁武县| 青冈县| 昌乐县| 肇庆市| 察哈| 旬阳县| 东光县| 安康市| 房产| 枣强县| 陵水| 乌恰县| 靖西县| 星子县| 乾安县| 边坝县| 上杭县| 富锦市| 固原市| 政和县| 科技| 敦化市| 平凉市| 河南省| 盐亭县| 东光县| 额尔古纳市|