일반적으로 우리는 서버의 압력을 더욱 잘 완화하고 검색엔진의 우호적인 면을 강화하기 위해 문장의 내용을 정적 페이지로 만든다.그러나 때때로 실시간으로 정보를 표시하거나 동적 스크립트를 활용하여 문제를 해결하고자 하기 때문에 정적 방식으로 사이트의 내용을 전시할 수 없고 반드시 동적 페이지 디스플레이에 사용해야 한다.이렇게 해서 검색엔진에 대한 우호적인 면을 잃게 되었다. 어떻게 둘 사이에서 중간 방법을 찾고, 어떻게 당신의 사이트 주소의 가독성을 강화하고, 검색엔진을 당신의 사이트에 신속하게 수록할 수 있습니까?이것은 당신이 당신의 웹 페이지의 주소를 미화해야 하기 때문에 위정적 기술, 즉 우리가 흔히 말하는 Url Rewriter 재작성 기술이 생겼다.바로 우리가 한 페이지를 방문할 때 주소란에'.html'을 끝으로 하는 정적 페이지 형식이 표시되고 실제로 우리가 방문한 동적 페이지이다.여기에는 UrlRewriter 기술이 필요합니다.여러분이 익숙한 것은 아마도 많은 서버들이 Url 리셋 기술을 제공할 것입니다. 이전에 우리가 가장 많이 사용한 것은 Apache, Jboss와 같은 일부 서버들이 자체적으로 가지고 있는 Url 리셋입니다. 그러나 그들의 설정은 비교적 번거롭고 성능이 그다지 좋지 않습니다.현재 우리는 Url 리셋 작업을 완성하기 위해 전문적인 소스 프레임워크를 가지고 있습니다. 오늘 제가 소개하고자 하는 것은 Url Rewrite Filter입니다. 이것은 사용하기에 비교적 간단합니다.UrlRewriteFilter는 Apache의mod_와 유사한 URL을 덮어쓰는 웹 필터입니다.rewrite.Resin, Orion, Tomcat 등과 같은 모든 웹 응용 서버에 적용됩니다.그 전형적인 응용 프로그램은 동적 URL을 정태화하여 검색 엔진 파충류가 당신의 동적 웹 페이지를 잡는 데 편리하도록 한다.우선 Url 리필을 사용하면 당신의 사이트에 어떤 이익을 가져다 줄 수 있는지 간단하게 알아보겠습니다.첫째, 검색 엔진의 캡처에 유리하다. 왜냐하면 현재 대부분의 검색 엔진은 동적 페이지에 대한 캡처가 비교적 약하기 때문에 그들은 정적 페이지를 캡처하는 것을 더욱 좋아한다.우리의 현재 페이지의 대부분 데이터는 동적으로 표시됩니다.이것은 우리가 동적 페이지를 정적 페이지로 바꾸어 검색 엔진의 캡처에 유리하게 해야 한다.둘째, 사용자로 하여금 더욱 쉽게 이해하게 하고 사용자가 당신의 사이트의 주소에 관심을 가지는 경우는 드물지만 일반적인 대중형 사이트에 대한 가독성을 강화하는 것은 필수적이다.이렇게 하면 너의 사이트를 더욱 완벽하게 할 것이다.셋째, 숨겨진 기술의 실현, 우리는 Url 리메이크를 통해 기술의 숨겨진 것을 실현할 수 있다.당신이 채택한 기술을 폭로하지 않고 당신의 사이트를 공격하고 싶은 애호가들에게 편의를 제공하세요.넷째: 쉽게 중용하여 사이트의 이식성을 높일 수 있다.만약 우리가 무대 뒤의 방법을 바꾸면, 무대 위의 페이지 부분을 바꾸지 않아도 된다는 것을 보장할 수 있다.이렇게 하면 사이트의 이식성을 높일 수 있다.이것은 비록 이렇게 많은 장점을 가지고 있지만 약간의 단점도 있다. 왜냐하면 필터 원리를 통해 이루어진 것이기 때문에 또 하나의 방문이 많아지면 점 방문 속도에 다소 영향을 줄 수 있다고 생각하기 때문에 이것은 무시할 수 있다.현재 UrlRewriter 기술은 두 가지 기술 플랫폼이 있는데 하나는 자바 방향이고 다른 하나는 바로NET 방향의오늘 우리가 말한 것은 자바 방향의 응용이다.우선 그 작업 원리를 알아보자. 간단하게 말하자면 필터 (Filter) 다. 원본을 보면 우리가 jsp에서 자주 사용하는 두 가지 방법으로 이루어진 forward (), sendRedirect () 라는 것을 금방 알 수 있다.다음은 Url 리셋 기술에 대한 간단한 응용: 첫 번째 단계: urlrewrite-3.2.0beta를 다운로드합니다.jar 패키지, 그리고 urlrewrite-3.2.0beta.jar는classpath에 복사합니다.2단계: WEB-INF 디렉터리에 urlrewrite를 만듭니다.xml 프로필.3단계: 웹에서.xml 프로필에서 UrlRewriteFilter 구성을 초기화합니다.구성 파일에 다음 코드를 추가합니다
<!-- URL Rewrite-->
<FILTER></FILTER>
<FILTER-NAME></FILTER-NAME>UrlRewriteFilter
<FILTER-CLASS></FILTER-CLASS>
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter
<FILTER-MAPPING></FILTER-MAPPING>
<FILTER-NAME></FILTER-NAME>UrlRewriteFilter
<URL-PATTERN></URL-PATTERN>/*
<DISPATCHER></DISPATCHER>REQUEST
<DISPATCHER></DISPATCHER>FORWARD
마지막으로 자주 사용하는 두 가지 설정 규칙을 간단하게 말씀드리겠습니다. 다음은 간단한 URLrewrite입니다.xml 설정 세션.자바의 명명법에 익숙해지지 말고 URLRewrite로 쓰세요.xml, 이렇게 하면 네가 덧붙여도
<INIT-PARAM></INIT-PARAM>
<PARAM-NAME></PARAM-NAME>confPath
<PARAM-VALUE></PARAM-VALUE>/WEB-INF/urlRewrite.xml
, (urlrewrite.xml) WEB-INF 。
<!--l version="1.0" encoding="utf-8-->
<URLREWRITE></URLREWRITE>
<!-- -->
<RULE></RULE>
<FROM></FROM>^/forum/thread/([0-9]+).html$
<TO type="forward"></TO>/forum/list.action?id=$1
<RULE></RULE>
<FROM></FROM>^/forum/thread/([0-9]+).html?page=([0-9]+)$
<TO type="forward"></TO>/forum/list.action?id=$1&page=$2
모든 규칙 설정은 여기에 쓰여 있습니다.첫 번째 상용 규칙은 사이트 내의 간단한 재작성입니다.
는 실제 방문 주소입니다.예를 들어 우리의 실제 방문 주소는 다음과 같다.http://www.phome.asia/forum/list.action?id=16931&페이지=2 우리는 그것을 다시 쓰고 싶다http://www.phome.asia/forum/thread/16931.html?page=2.이렇게 하면 보기에 우리의 실제보다 훨씬 보기 좋다.우리는 마땅히 이렇게 써야 한다
<RULE></RULE>
<FROM></FROM>^/forum/thread/([0-9]+).html?page=([0-9]+)$
<TO type="forward"></TO>/forum/list.action?id=$1&page=$2
자주 사용하는 정규 표현식: 코드 설명을 간단하게 소개합니다.줄 바꿈 문자를 제외한 임의의 문자 일치\w 일치 알파벳이나 숫자 또는 밑줄 또는 한자\s 일치 임의의 공백 문자 일치\d 일치 숫자\b 일치 단어의 시작 또는 끝 ^ 일치 문자열의 시작 $일치 문자열의 끝표시합니다. $1, $2는 정규식 >/(\w+)/(\w+)/에 해당하는 매개변수를 구성합니다. 기본값은 type = "forward"입니다.또 다른 상용 규칙은 외부 사이트를 연결하는 것이다.를 사용해야 합니다.
<RULE></RULE>
<FROM></FROM>^/rss/yahoo\.html$
<TO type="redirect"></TO> http://add.my.yahoo.com/rss? url= http://feed.feedsky.com/ MySiteFeed