사이트 컴파일 개요

사이트 "페이지"를 구성하는 메타데이터 파일은 컴파일 중에 결합되므로 일반적으로 런타임에 필요한 서버 요청을 피할 수 있습니다. 페이지 뷰당 렌더링 비용을 일회성 컴파일타임 비용으로 효과적으로 이동하는 것입니다.

런타임 요청 수를 줄여서 성능을 향상시킬 수 있습니다. 질의 결과를 페이지로 직접 컴파일할 수 있기 때문에 모든 콘텐츠 질의를 피할 수 있습니다.

페이지가 즉시 렌더링되므로 동작이 향상될 수 있습니다. 따라서 "FOUC(스타일이 지정되지 않은 콘텐츠의 깜빡임)" 또는 페이지에 구성요소가 불확실한 순서로 표시되는 문제(바닥글이 즉시 나타나고 페이지의 다른 항목이 렌더링되면서 페이지 아래로 이동)를 피할 수 있습니다.

Oracle Content Management 사이트 내의 페이지를 컴파일하려면 사이트를 템플리트로 익스포트한 다음, OCE Toolkit을 사용하여 템플리트를 컴파일하고 생성된 정적 페이지를 원래 사이트로 업로드해야 합니다. 다음 단계는 템플리트 컴파일 프로세스를 안내하고 이 모델을 사용하여 사이트를 컴파일하는 방법을 알려줍니다.

사전 렌더링과 상호작용

사전 렌더링은 검색 엔진에 적합한 결과를 반환하는 데 중점을 둡니다. 사전 렌더링으로 생성된 페이지는 원본 페이지처럼 실행되지 않으며 JavaScript도 실행되지 않습니다. 단순히 브라우저에서 사전 렌더링된 HTML을 반환하여 SEO 텍스트 검색을 지원합니다.

사이트 컴파일을 통해 생성된 정적 페이지는 브라우저에서 실행되고 원래 동적 사이트 페이지와 똑같이 동작합니다. 여기서 비컴파일 구성요소를 동적으로 실행하고, 컴파일타임에 데이터를 수정하는 대신 결과에 완전한 최신 데이터를 원하는 사용자를 위해 런타임 질의를 실행합니다.

테넌트 관리자가 사전 렌더링 솔루션을 사용으로 설정한 경우 정적 페이지도 사전 렌더링 서버를 통해 전달할 수 있습니다. 인덱서와 크롤러가 정적 페이지 부분을 처리하며, 콘텐츠 목록처럼 여전히 동적으로 렌더링할 수도 있습니다.

콘텐츠 질의는 서식 있는 텍스트 필드 값을 포함하는 콘텐츠 항목을 반환하므로 콘텐츠 레이아웃이 콘텐츠 목록에 사용될 때 별도로 값을 인출하지 않아도 됩니다.

컨트롤러 사이트 페이지 렌더링

cec compile-template 명령을 사용하여 Oracle Content Management 사이트 페이지 컨트롤러를 거치지 않고 브라우저에서 직접 사이트 페이지를 렌더링할 수 있습니다.

정적 HTML 페이지 생성을 위해 컴파일러를 사용하지 않고 Oracle Content Management 사이트는 컨트롤러 모델을 사용하여 페이지를 렌더링합니다. 여기에는 실제로 브라우저에 페이지를 표시하기 전에 사이트 정보를 얻기 위한 수많은 요청, 사이트 내의 페이지와 페이지 렌더링에 사용되는 템플리트가 관여합니다.

주:

controller.js 파일을 가져오는 등의 더 많은 요청이 관여합니다.

컴파일된 사이트 페이지 렌더링

cec compile-template 명령을 사용하여 모든 단계를 정적 HTML 파일로 컴파일하고 해당 서버 요청을 줄이거나 없애서 런타임 사이트의 성능을 향상시킬 수 있습니다. 또한 런타임에 변경할 필요 없는 리소스에 대한 요청을 더 줄여서 정적 페이지로 컴파일할 수 있습니다.

기본 컴파일 프로세스는 기존 런타임 컨트롤러의 작업을 맡아서 사이트의 각 page.json 파일에 대한 물리적 HTML 페이지를 생성합니다. 그런 다음 이 페이지를 사이트에 배치할 수 있고 사이트와 함께 게시되어 해당 페이지 URL에 도달할 때 사용됩니다.