아파치 및 IIS에서 Hdwiki 백과 사전 건설 역 강의 단계 III: 재작성 규칙

출처: 인터넷
작성자: 사용자

중간 거래 SEO 진단 Taobao 게스트 클라우드 호스트 기술 홀

모두 좋은, "Hdwiki 사전 구축 역 강의 III" 지금 공식적으로 시작 했다 ~ ~, 오늘, 우리의 손님 초대는 리 광 밍 (포럼 Id: wanner), 그는 "아파치, IIS 재작성 규칙에 따라" 주제와 의사 소통, 아래, 웹 마 스 터 친구의 것 따뜻한 박수와 함께 Wanner 하시기 바랍니다

1, 의사 정적 소개

의사 정적 이다: 동적 웹 페이지 동적 페이지 매개 변수를 제거 하려면 URL 메서드를 다시 작성 하 여 실제 페이지 디렉터리에 재정의 페이지의 존재를 구현할 필요가 없습니다.

의사 정적 목적

중요 한 것은 검색 엔진 편의 검색 엔진 스파이더 (거미) 페이지에서 관련 콘텐츠를 크롤 링을 맞추! 쉬운 웹 사이트에 대 한 액세스 좋은 웹 페이지 동적 통신 상호 신뢰의 감정 사이에서 사용자 높은 되지 것입니다 하지만 웹 페이지에 사용자의 트러스트에 상대적으로 정적 페이지를 보면 높은 고 방법은 기본적으로 비슷한 그것 봐 의사 정적 접미사는 진정한 웹 페이지 또는 정적! 의사 정적 SEO 혜택, 보다 동적 포함 좋을 것입니다.

2, 설정된 의사 정적 요구 사항

설정 의사 정적 요구 사항, 요구 사항 다른 서버, 아파치 모듈을 다시 작성 해야, IIS Isapi_rewrite 소프트웨어를 설치할 필요가. (만약 가상 호스트, 상담 될 수 있다 공간 비즈니스에), 독립적인 호스트를 설정할 수 있습니다, 기본 해야한다 일반 아파치 재작성 모듈 및 오픈, 하지 않을 경우, 아파치 설정 파일 httpd.conf 파일을 LoadModule Rewrite_ 열 수 있습니다 모듈 modules/mod_rewrite.so, 전면 잘 번호를 제거 하 고 다시 시작 아파치 IIS Isapi_rewrite 소프트웨어에 대 한 얘기를 유지.

L은 IIS 관리자에서 웹 사이트를 선택 하 고 마우스 오른쪽 단추로 클릭 속성에서와 같이

  

L 선택 귀하의 사이트, 예를 들어 기본 사이트, 마우스 오른쪽 단추로, 속성, 그림 2와 같은 선택

  

L 보기 ISAPI 필터

  

L는 ISAPI 필터를 추가, 선택 하려면 isapi.dll 온라인 다운로드 될 수 있다

  

  

  

L 성공 그냥 추가한 경우 결정

  

때 녹색 위쪽 화살표 상태 재작성 환경 열는 재작성 하도록 구성 된 경우 성공적으로 추가 되 면.

3, 오픈 의사 정적

재작성 모듈을 설치한, Hdwiki 배경 재작성 규칙을 열 수 있습니다, 아파치 사용자가 없는 것입니다 일반적으로 어떤 문제를 확인 하는 경우 시스템이 자동으로 생성 되었습니다. htaccess로 파일, IIS 사용자 포럼 디렉토리에 Httpd.ini 파일을 수동으로 추가할 필요가 (가상 호스트 사용자 파일이 어디 공간 공급자를 상담할 수 있다), 특정 참조 http://kaiyuan.hudong.com/bbs/viewthread.php?tid=10341 & 추가 = & 강조 iis %2b & 페이지 = = 1, 이것은 4.0.5 규칙, 그러나 이것은 일반적인 규칙, 4.1도 적용, 규칙, 밖으로 작성 하려면 http://를 참조할 수 있습니다 Kaiyuan.hudong.com/bbs/viewthread.php?tid=13330 & 하이라이트 = 재작성

4, 재작성 규칙

아파치, iis 및 Nginx 3 서버에 대 한 재작성 규칙을 포함 하는 hdwiki4.1의 설명서

L 아파치 아래 규칙

#表示开启rewrite에 Rewriteengine

rewritebase/hdwiki4/wikiframe / #设置目录级重写的基准URL 사이트의 경로를 나타냅니다.

Rewritecond % {request_filename}!-f #RewriteCond是指定义重写发生的条件, Rewritecond에 부합 하는 경우는 rewriterule 앞, 즉, 여러 rewritecond를 가질 수 있다는 의미 % {request_filename}의 요청 파일 이름을 나타냅니다! 일반 파일 즉 하지---F, rewriterule 파일 때 요청 된 파일 이름이 다시 시작, 그렇지 않으면 그것은 (일반 파일 A.txt를 참조) 하는 경우 실행 되지 않습니다 나타내는 나타냅니다 파일 직접 다운로드 받을 수 있는)

이 규칙은 Rewritecond % {request_filename} 적용!-d #该句表示请求的文件名不是一个目录继续执行RewriteRule ^. * 예를 들어, $ index.php?$0, #当上面两个条件都符合了 ABC INDEX.PHP?ABC 이동 됩니다.

위의 코드에서는 정규 표현식, Rewriterule 많이 ^. * 예를 들어, 시작을 예를 들어 $ index.php?$0은 ^ 문자로 시작 하는 식 '. ' 단어 문자를 나타냅니다, 푸 Shitong * n, 위의 식을 0을 나타냅니다. * $ 어떤 끝, 모든 문자 일치를 위한 B-문자 끝 $ b$ 나타냅니다 나타냅니다 나타냅니다 0 또는 N 임의 문자.이 인스턴스를 다시 봐.

Rewriterule ^ / 위 키 /(. *) $/index\.php\?doc-innerlink-$1

이 내부는는 ^ / 위 키 /(. *) $가 대괄호 안에 문자열 일치는 또한, 괄호는 $2$ 3... iis 기본적으로 규칙을 다시 작성 하 고 이것, 위의 문구, 특정 참조 안내서와 호환 ISAPI 높은 버전 또한, 주의 한다 많은 IIS 사용자 쓰기 일반적으로 폴더 이름에 의해 구별 될 수 있다 Hdwiki 그리고 Discuz, IIS, 충돌을 일으키는 다른 시스템의 규칙

예를 들어 일부 사용자 작성이 Httpd.ini

Rewriterule ^ /(. *) /(. *) \. (htm | html | shtml | tpl | asp | jsp | php | 할) $/baike/index\.php\?$1 Rewriterule을 변경할 수 있습니다 ^ / baike /(. *) \. (htm | html | shtml | tpl | asp | jsp | php | 할)이 일반 서 면에서 하지만 DZ는 Rewriterule 같이 작성 하는 같은 IIS 사용 되지 않습니다 사용자의 많은 $/baike/index\.php\?$1 ^ / baike/문서-뷰-(. *) $/baike/index\.php\?doc-view$1 쓰기의이 유형은 완전히 될 수 있다, 유일한 불편 한 경우 새로 추가 된 기능에 hdwiki,이 URL은 해결 되지 않을 수 있습니다 해당 규칙이 있기 때문에, 우리에 국자를 작성 하 여 주를 따를 수 있다는

L Nginx

경우 ($request _filename! ~ * (. *) \. ( Css | js | gif | jpg | png | xml)) 없음

#는 / hdwiki Hdwiki 디렉터리 주소에 대 한 다음 문에서 경우 프로그램은 루트 디렉터리에 제발 변경/hdwiki를 수정 /

재작성 ^ (/ hdwiki) /(. *) $ $1/index.php?$2;

}

Http://mydomain/entry 이름으로만 재작성 규칙을 열고 다음 코드를 추가 합니다.

#는 / hdwiki Hdwiki 디렉터리 주소에 대 한 다음 문에서 경우 프로그램은 루트 디렉터리에 제발 변경/hdwiki를 수정 /

재작성 ^ (/ hdwiki) /wiki/(. *) $ $1/index.php? doc-innerlink-$2 마지막;

다른 서버에 대 한 재작성 규칙 스타일과는 약간 다른 정규 표현식에서 표현 된다

예를 들어 LIGHTTPD 다음과 같이 작성 (Http://kaiyuan.hudong.com/bbs/viewthread.php?tid=13353 & 하이라이트 = 재작성)

Url.rewrite (=

"^ (. *) \/(Attachment|category|comment|doc|edition|list|pms|reference|search|synonym|user|plugin|admin|pic|gift) ([^ \ /] *) $ "= >" $1/index.php?$2$3 "

)

5, 의사 정적 단점

조금 큰 흐름의 일부 의사 정적 CPU 오버 로드를 사용 하 여, 정적 의사는 어떤 페이지를 식별 하는 실제 주소 대신 판단 하는 데 사용 됩니다 때문에 CPU 점유율의 증가 실제로 정적 의사의 가장 큰 잘못 그래서 판단, CPU에 의해 지정 하는 직접의 책임입니다. 트래픽이 많은, 하지만 개인 사이트의 금액을 수집 해야, 의사 정적은 좋은 선택 하지만

6, Hdwiki 의사 정적 해제

정적 의사 하지 사용 하 여 정상적인 경우 일부 사용자가 일반적으로에 로그인 할 수 정적 재작성 의사에, 또한 로그인 할 수 있도록 새로운 패치를 의사 정적, 배경 없이 업그레이드 패치 패키지의 4.1을 다운로드할 수 있다 또는 하지에 로그인 할 수 없는 학생의 패치, 도구 상자 방문 사용할 수 있습니다

호스트:

밝은 답변 주셔서 감사 합니다,이 강의 끝났습니다.

연락처

이 페이지의 내용은 인터넷에서 가져온 것이므로 Alibaba Cloud의 공식 의견이 아닙니다.이 페이지에서 언급 된 제품 및 서비스는 Alibaba Cloud와는 관련이 없으므로이 페이지의 내용이 골칫거리 인 경우 저희에게 알려주십시오. 우리는 5 일 근무일 이내에 이메일을 처리 할 것입니다.

커뮤니티에서 표절 사례를 발견한 경우 info-contact@alibabacloud.com 으로 관련 증거를 첨부하여 이메일을 보내주시기 바랍니다. 당사 직원이 영업일 기준 5일 내에 연락 드리도록 하겠습니다.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.