워드 프레스는 퍼머 링크를 어떻게 처리합니까?


11

워드 프레스는 URL을 잘못 입력하더라도 자동으로 수정합니다. 예를 들어 워드 프레스는 example.com/some-post입력 example.com/idontexist/some-post하거나 입력 하더라도example.com/some

WordPress는 RegEx 유사 또는 오른쪽에서 왼쪽으로 비교하는 일부 일치 알고리즘을 사용하며 일치하는 항목을 찾으면 /.*/왼쪽에 왼쪽 이 있어도 페이지로 이동합니다 . 그냥 추측! 워드 프레스는 어떻게합니까?

편집 : 나는 또한 가상 파일 / 디렉토리에 대한 htaccess로 파일 검사가 사용하는 것으로 나타났습니다 !f!d및 블로그 폴더의 index.php로 요청을 리디렉션합니다.

답변:


6

/wp-includes/canonical.php의 redirect_canonical 함수는 지정된 URL에서 호출되며 URL이 존재하지 않을 때 사용자가 원하는 URL을 가장 잘 추측하여 리디렉션합니다. 모든 종류의 일반적인 오류에 대해이 작업을 수행하는 데는 엄청난 양의 코드가 있습니다.


1
"전체 금액": D.
Travis Northcutt


1

꽤 간단합니다. WordPress는 SQL 쿼리에서 LIKE 연산자를 사용 하여 404 페이지 인 경우 부분 URL에서 전체 URL을 추측합니다 .

/wp-includes/canonical.php redirect_guess_404_permalink()함수 에서 가져온 코드를 확인하십시오

$where = $wpdb->prepare( 'post_name LIKE %s', $wpdb->esc_like( get_query_var( 'name' ) ) . '%' );
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.