UrlRewrite 주소 재 작성 으로 안전성 증가

6544 단어 자바 웹 기술
간단 한 소개
UrlRewrite 는 우리 가 일반적으로 말 하 는 주 소 를 다시 쓰 는 것 입 니 다. 사용자 가 얻 은 것 은 모두 처 리 된 URL 주소 입 니 다.
방문 의 편 의 를 위해 사용자 가 url 후에 파 라 메 터 를 함부로 추가 하 는 등 안전 원인 을 방지 하기 위해 가끔 은 사이트 의 방문 경 로 를 위장 해 야 한다. 예 를 들 어
   http://localhost:8080/datasystem/portal/toIndex.do    위장 하 다     http://localhost:8080/datasystem/index.html
 
장점.
(1) 안전성 향상       일부 매개 변수 이름, ID 등 이 사용자 앞 에 완전히 노출 되 는 것 을 효과적으로 피 할 수 있 습 니 다. 사용자 가 마음대로 지면 규칙 에 맞지 않 으 면 404 또는 오류 페이지 로 돌아 갑 니 다. 이것 은 500 또는 많은 서버 오류 정 보 를 직접 되 돌려 주 는 것 보다 좋 습 니 다.  (2) URL 미화       예 를 들 어 *. do 와 같은 접미사 이름, 긴 매개 변수 문자열 등 을 제거 하고 방문 모듈 의 내용 을 더욱 간단하게 반영 할 수 있 는 URL 을 스스로 구성 할 수 있 습 니 다.  (3) 검색엔진 수입 에 유리       URL 에 대한 최 적 화 를 통 해 검색엔진 이 사이트 의 정 보 를 더욱 잘 식별 하고 수록 할 수 있다
 
사용 절차
    1, 다운로드 jar
     일반 웹 프로젝트
           공식 주소:http://tuckey.org/urlrewrite/ 
           다운로드 링크:http://central.maven.org/maven2/org/tuckey/urlrewritefilter/4.0.3/urlrewritefilter-4.0.3.jar            url rewritefilter - 4.0.3. jar 를 다운로드 하여 프로젝트 lib 디 렉 터 리 에 추가 합 니 다.
    maven 프로젝트  다음 코드 를 pom. xml 에 추가 하면 됩 니 다.
  
   org.tuckey
   urlrewritefilter
   4.0.3

   2. 웹. xml 설정
 
   
     UrlRewriteFilter 
     org.tuckey.web.filters.urlrewrite.UrlRewriteFilter 
   
   
   
     UrlRewriteFilter 
     /* 
     REQUEST 
     FORWARD 
  

 3. url rewrite. xml 설정    (프로젝트 의 WEB - INF 디 렉 터 리 에 url rewrite. xml 를 새로 만 듭 니 다.)   

 
 
     
        
         /index.html  

        
         /portal/toIndex.do
        
        
     


   forward 와 redirect 는 모두 사용 할 수 있 지만 forward 방문 이 끝 난 후에 도 실제 방문 주 소 를 표시 하지 않 고 개인 적 으로 느낌 이 좋 습 니 다.
  
  예시:
     1. 정규 표현 식 일치 사용 (rule 의 기본 일치 방식 은 정규 표현 식)

       ^/demo/(\w+).html$//        :http://127.0.0.1:8080/Struts/demo/hello.html
       /Struts/$1//       :http://127.0.0.1:8080/Struts/hello


해석:
   rule  url rewrite 의 하위 노드 입 니 다. url rewrite 의 주요 규칙 노드 입 니 다. 그 안에 from 과 to 두 개의 하위 노드 가 포함 되 어 있 습 니 다. from 은 요청 한 URL 을 표시 하고 to 는 실제 URL 로 넘 어 갈 것 임 을 표시 합 니 다.

    ^/news/([0-9]+).html$
    /news/news.jsp?newsId=$1


 
  탭 의 설정:
주 소 는 브 라 우 저가 방문 할 주 소 를 표시 합 니 다. (즉, 차 를 되 돌리 기 전에 주소 표시 줄 에 입력 한 주소 또는 탭 이 가리 키 는 연결), 스스로 지정 할 수 있 습 니 다.
      괄호 안의 내용 은 정규 표현 식 으로 문 자 를 걸 러 내 는 데 사 용 됩 니 다. 예 를 들 어 ^/news/([0 - 9] +). html $는 일치/news 디 렉 터 리 에서 임의의 숫자 로 이름 을 지 을 수 있 는 html 파일 을 표시 합 니 다. 예 를 들 어 news/1. html, news/1234. html 등 입 니 다. 주로 접근 경로 나 전 참 을 걸 러 내 는 데 사 용 됩 니 다.
        type 을 쓰 지 않 으 면 기본 값 은 forward 입 니 다.
내용 은 브 라 우 저가 상기 주 소 를 방문 한 후에 실제 적 으로 시스템 에 접근 할 수 있 는 주소 로 바 뀌 었 음 을 나타 낸다. 이 주 소 는 정말 존재 해 야 한다 (물론 SpringMVC 는 Controller 의 주소 로 설정 할 수 있 고 struts 2 는 action 의 주소 로 설정 할 수 있다). 위의 예 는 표지 가 가리 키 는 주소 중의 "$1"이다.탭 의 첫 번 째 정규 표현 식 이 일치 하 는 실제 내용 (즉 ([0 - 9] +) 을 표시 합 니 다.  ),이 특성 을 이용 하면 전 삼 의 효 과 를 거 둘 수 있다.

     ^/demo1/(\w+)/(\w+).html$
     /Struts/$1.action?age=$2


     탭 이 하 는 역할 은 브 라 우 저가 방문 하 는 주 소 는 중간 주소 입 니 다. 이 주 소 를 필터 링 을 통 해 방문 하 는 주소 로 바 꾸 고 돌아 올 때 정적 주소 로 표시 합 니 다.
    그러나 일반적인 상황 에서 이러한 정적 주 소 는 우리 가 수 동 으로 주소 표시 줄 에 입력 한 것 이 아니 라 웹 페이지 에 존재 하 며 사용자 가 클릭 하여 방문 한 것 이 며 많은 경우 탭 의 주 소 는. jsp,. php 등 동적 주 소 를 사용 합 니 다. 이 경우 사용 해 야 합 니 다.

    ^/news/([0-9]+).html$
    /news/news.jsp?newsId=$1





      ^/WebTest/news/news.jsp\?newsId=([0-9]+)$
      /WebTest/news/$1.html

 탭 의 내용 과 차이 가 많 지 않 은 설정 을 발견 할 수 있 습 니 다. 위의 탭 과 정반 대 입 니 다.
 
index.jsp






  


    
           
  •        
                 
    •                 뉴스
    •            
    •                 뉴스
    •            
    •                 뉴스
    •        
       

     위 에서 '뉴스 1' 링크 에 대한 설정 은 바로 이 렇 습 니 다. jsp 는 뉴스 값 을 가 져 와 서 사용자 에 게 정적 주 소 를 보 여 주 었 습 니 다. 정적 페이지 를 직접 방문 하 는 것 보다 두 걸음 더 걸 은 것 과 같 습 니 다. url rewrite. xml 에서 구체 적 인 실행 순 서 는 다음 과 같 습 니 다.
   UrlRewrite 关于地址重写来增加安全性_第1张图片
    a 태그 href 링크 는 태그 의 주 소 를 가리 키 고 여러 가지 방향 을 통 해 실제 동적 주소 로 실 행 됩 니 다.
   따뜻 한 알림: 일부 특수 문 자 는 에서 전의 가 필요 합 니 다. 예 를 들 어 '?' 는 '\?', '&' 는 '& amp;' 로 바 꿔 야 합 니 다.
 
이 블 로 그 는 다음 과 같이 전 재 됩 니 다.
      저자: Benett - Chen
      링크:https://blog.csdn.net/sky_100/article/details/53410013
 
      만약 에 모 르 거나 문제 가 있 을 때 아래 QR 코드 를 스 캔 할 수 있 습 니 다. 단체 교류 와 공 유 를 환영 합 니 다. 여러분 과 교류 하고 공부 할 수 있 기 를 바 랍 니 다!
                                                 

좋은 웹페이지 즐겨찾기