>  Q&A  >  본문

htaccess를 사용하여 리디렉션하고 슬래시, 밑줄 또는 날짜를 구분 기호로 사용 - 친숙한 URL

잘 작동합니다:

으아아아

다음을 사용하세요RewiteRule

으아아아

새 URL을 받고 싶습니다:

으아아아

이전 URL에서

으아아아

저는 다음과 같은 다양한 방법을 시도했습니다:

으아아아

마지막 폴더 일치20230204_ntdd가 다시 쓰기 모듈을 켠 상태에서 문제를 일으키는 것 같습니다.

P粉717595985P粉717595985377일 전447

모든 응답(1)나는 대답할 것이다

  • P粉180844619

    P粉1808446192023-09-12 00:18:54

    요청한 URL에 0204(MMDD) 부분이 존재하지 않으므로 하드코딩해야 합니다. 다행히도 해당 연도에는 MMDD가 하나만 있습니다.

    서버 구성에 액세스할 수 있는 경우 RewriteMap - 然后可以在 .htaccess.

    에서 조회하는 일대일 매핑을 구현할 수 있습니다.

    그렇지 않으면 .htaccess에서 다음과 같은 작업을 수행할 수 있습니다.

    으아악

    이전 조건에는 YYYY를 MMDD에 대한 일대일 매핑이 포함되어 있습니다. $1RewriteRule 是从 RewriteRule pattern 捕获的 4 位数字年份,然后 CondPattern 从 < em>TestString,它是使用生成的替换字符串中的 %1pattern

    에서 캡처한 4자리 연도와 < code>%1을 사용하여 생성된 < em>TestString
    에서

    CondPattern을 캡처한 것입니다. 역참조로 검색됩니다.

    나레이션:
    1. 그러나 원래 규칙에는 몇 가지 잠재적인 SEO 문제가 있습니다.

    2. 요청한 URL에 선택적으로 후행 슬래시를 허용합니다. 그러나 둘 다 동일한 리소스를 반환합니다. 이는 엄밀히 말하면 두 개의 서로 다른 URL이며
    3. 중복 콘텐츠

      문제를 일으킬 수 있습니다. 두 개의 URL을 동시에 수신할 수 있는 경우(뒤에 슬래시가 있거나 없음) 이상적으로는 사양에 관계없이 한 URL에서 다른 URL로 리디렉션해야 합니다.
      대소문자를 구분하지 않는 일치를 허용합니다. 다시 말하지만 이로 인해 < /a>중복 콘텐츠

      문제가 발생할 수 있습니다. 대소문자가 혼합된 요청이 있는 경우 외부 리디렉션을 사용하여 요청을 정규화/수정해야 합니다. 아래를 참조하세요:
    4. .htaccess에서 URL을 대문자에서 소문자로 다시 쓰는 방법

    🎜기존 URL 구조(제3자가 색인화 및/또는 링크한)를 변경하는 경우 SEO를 보호하기 위해 이전 지시문에서 새 지시문으로 외부 301 리디렉션을 구현해야 합니다. 🎜 🎜 🎜

    회신하다
    0
  • 취소회신하다