ACP2E-5143: GraphQL route 쿼리가 요청되지 않은 CMS 페이지 콘텐츠를 렌더링합니다.
ACP2E-5143 패치는 URL 라우팅 필드만 요청되어 URL 확인이 느려지는 경우에도 GraphQL route 쿼리가 페이지 빌더 위젯 및 제품 목록을 포함한 전체 CMS 페이지 콘텐츠를 렌더링하는 문제를 해결합니다. 이 패치는 Quality Patches Tool (QPT) 1.1.84가 설치되어 있을 때 사용할 수 있습니다. 패치 ID는 ACP2E-5143입니다. 이 문제는 Adobe Commerce 2.4.10에서 수정됩니다.
영향을 받는 제품 및 버전
Adobe Commerce 버전에 대한 패치가 만들어졌습니다.
- Adobe Commerce(모든 배포 방법) 2.4.7-p9
Adobe Commerce 버전과 호환:
- Adobe Commerce(모든 배포 방법) 2.4.4 - 2.4.7-p10
magento/quality-patches 패키지를 최신 버전으로 업데이트하고 Quality Patches Tool에서 호환성을 확인합니다. 패치 검색 페이지. 패치 ID를 검색 키워드로 사용하여 패치를 찾습니다.문제
URL 라우팅 필드만 요청되어 URL 확인이 느려지는 경우에도 GraphQL route 쿼리가 페이지 빌더 위젯과 제품 목록을 포함한 전체 CMS 페이지 콘텐츠를 렌더링하는 문제가 발생합니다.
필수 구성 요소:
페이지 빌더가 설치되어 있습니다.
재현 단계:
-
관리자 > Content > Elements > Pages(으)로 이동한 다음 Add New Page을(를) 클릭합니다.
-
페이지 세부 정보를 입력하고 Enable Page을(를) Yes(으)로 설정한 다음 Content 섹션에서 Edit with Page Builder을(를) 클릭합니다. 페이지 빌더 패널에서 Add Content을(를) 확장하고 Products 자리 표시자를 스테이지로 드래그하거나 카탈로그 제품 위젯을 페이지 콘텐츠에 삽입합니다.
-
[관리]에서 Stores > Settings > Configuration(으)로 이동합니다. General 아래의 왼쪽 패널에서 Web을(를) 선택한 다음 Default Pages을(를) 확장합니다. CMS Home Page을(를) 새 페이지로 설정하고 Save Config을(를) 클릭합니다.
-
다음 GraphQL 요청 보내기:
code language-none query ResolveURL($url: String!) { route(url: $url) { relative_url redirect_code type ... on CmsPage { identifier __typename } ... on ProductInterface { uid __typename } ... on CategoryInterface { uid __typename } __typename } } -
요청에 다음 변수를 사용합니다.
code language-none { "url": "/" }
예상 결과:
route 쿼리는 전체 콘텐츠를 렌더링하지 않고 CMS 홈 페이지에 대해 요청된 라우팅 메타데이터 및 형식 판별자 필드를 반환합니다.
실제 결과:
- 라우팅 메타데이터 및 형식 판별자 필드만 요청될 경우에도
route쿼리는 전체 CMS 홈 페이지 콘텐츠를 렌더링합니다. - 페이지 빌더 위젯은 제품 컬렉션을 로드하여 응답 시간과 요청당 데이터베이스 쿼리 수를 늘립니다.
패치 적용
개별 패치를 적용하려면 배포 방법에 따라 다음 링크를 사용합니다.
- Adobe Commerce 또는 Magento Open Source 온-프레미스: Quality Patches Tool 가이드의 Quality Patches Tool > 사용량
- 클라우드 인프라의 Adobe Commerce: Commerce on Cloud Infrastructure 안내서의 업그레이드 및 패치 > 패치 적용
관련 읽기
Quality Patches Tool에 대한 자세한 내용은 다음을 참조하세요.