찾다
웹 프론트엔드프런트엔드 Q&A클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석

이 기사는 클라이언트 측 렌더링 CSR 및 서버 측 렌더링 SSR에 대한 지식을 제공합니다.

클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석

서문: SEO에 대한 간략한 소개

  • SEO(Search Engine Optimization)란 검색엔진의 검색순위 규칙을 일반용어로 요약해서 웹사이트를 합리적으로 최적화한다는 뜻입니다. 귀하의 웹 사이트가 Baidu에서 순위가 ​​매겨지거나 Google과 같은 검색 엔진의 순위가 향상되어 더 많은 사용자가 귀하의 웹 사이트에 액세스할 수 있게 됩니다.

클라이언트 측 렌더링:

  • 클라이언트 측 렌더링(클라이언트 측 렌더링), 즉 사용자가 URL 요청을 통해 웹 사이트에 액세스하면 서버가 html 문서를 반환한 다음 브라우저를 허용합니다. 디스플레이 페이지를 구문 분석하고 렌더링하려면 js, css, 이미지 파일 등이 데이터 로딩을 요청하기 위해 서버에 다시 요청을 보내야 합니다.

    클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석

서버 측 렌더링:

  • 클라이언트 측 렌더링에 해당하는 것은 서버 측 렌더링(SSR)입니다. 모든 프런트 엔드 렌더링 표시 페이지는 문자열입니다. html, js, css를 포함한 서버 측 렌더링은 처리된 html 문자열을 클라이언트에 반환하는 것이며, 반환된 html 문자열에는 서버 측 지식이 html 서비스에 표시되어야 합니다. 클라이언트 데이터와 같은 정보는 클라이언트 브라우저가 직접 표시할 수 있도록 이 HTML 문자열에 직접 기록됩니다.

    클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석

다음은 서버 측 렌더링의 간단한 예입니다.

import Koa from 'koa'
import Router from 'koa-router'
const app = new Koa()
const router = new Router()
router.get('/', async (ctx) => {
	ctx.body = `		
		  
		    <title>服务端渲染返回</title>
		  
		  
		    <h1 id="Hello-World">Hello World!</h1>
		  
		
	`
})
app.use(router.routes())

app.listen(3000, () => {
	console.log("koa server listening on 3000")
})

위 서버에서 반환된 html 문자열은 해당 웹 페이지로 클라이언트에 직접 표시되므로 클라이언트는 서버에 데이터 로드를 끊임없이 요청

클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석

서버 렌더링 VS 클라이언트 렌더링
  • CSR과 SSR의 가장 큰 차이점은 CSR이 페이지를 렌더링할 때 서버가 클라이언트에 직접 HTML을 반환한다는 점입니다. 렌더링 및 표시를 위해 SSR은 페이지 렌더링을 서버 측 JS 실행에 넘겨줍니다.
  • **기존 CSR의 단점 => **
  1. HTML은 렌더링을 위해 클라이언트에 직접 반환되므로 클라이언트는 실행을 위해 JS 코드를 가져오기 위해 서버에 AJAX를 여러 번 보내야 합니다. 페이지 로딩 속도가 느려집니다.
  2. 우리 클라이언트가 실행을 위해 서버에서 JS를 가져오고 검색 엔진 크롤러는 html 구조의 내용만 인식할 수 있지만 js 코드는 인식할 수 없기 때문에 SEO에 우호적이지 않습니다.

따라서 SSR의 출현은 전통적인 CSR의 단점을 해결할 수 있습니다. 왜냐하면 이때 클라이언트 요청은 SEO에도 충분히 친숙한 서버에서 렌더링된 HTML을 얻게 되기 때문입니다.

클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석

더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 소개를 방문하세요! !

위 내용은 클라이언트 측 렌더링(CSR) 및 서버 측 렌더링(SSR)에 대한 심층 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 CSDN에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
CSS : ID 선택기를 사용하는 것이 좋지 않습니까?CSS : ID 선택기를 사용하는 것이 좋지 않습니까?May 13, 2025 am 12:14 AM

ID 선택기를 사용하는 것은 본질적으로 CSS에서 나쁘지 않지만주의해서 사용해야합니다. 1) ID 선택기는 고유 한 요소 또는 JavaScript 후크에 적합합니다. 2) 일반적인 스타일의 경우 클래스 선택기가보다 유연하고 유지 관리 가능하므로 사용해야합니다. ID 및 클래스 사용의 균형을 유지함으로써보다 강력하고 효율적인 CSS 아키텍처를 구현할 수 있습니다.

HTML5 : 2024 년 목표HTML5 : 2024 년 목표May 13, 2025 am 12:13 AM

HTML5'SGOALSIN2024FOCUSONERFINEMENTANDENDEND 및 최적화, NOTNEWFEATURES.1) 최적화 된 렌더링을 향상시킵니다

HTML5가 개선하려고했던 주요 영역은 무엇입니까?HTML5가 개선하려고했던 주요 영역은 무엇입니까?May 13, 2025 am 12:12 AM

html5aimedtoimprovewebdevelopmentinfourkeyareas : 1) Multimediasupport, 2) Semantictructure, 3) Formcapabilities, 및 4) OfflineandStorageOptions.1) Html5intrudceDandlements, Simplifying MediaembeddingandenUsereXperxpercepence.2) NewSmanticallementalmentalmentementlementmentmentmentmentmentmentmentmentmentmentmentmentmentmentmentmentmentmentalments

CSS ID 및 클래스 : 일반적인 실수CSS ID 및 클래스 : 일반적인 실수May 13, 2025 am 12:11 AM

idsshouldBeusedforjavaScriptThooks, whileclassesarebetterforstyling.1) 1) USECLASSESTYLINGTOWALLOWFOREASIEREASEANDAVOIDSPECIFICITISUES.2) USEDSFORJAVASCRIPTHOOKSTOUNIQUELIDINTIFYELEMENTS.3) 피할 수있는 TeepSelectorsSimpleApperforformance.4

클래스와 ID 선택기 사이의 시상은 무엇입니까?클래스와 ID 선택기 사이의 시상은 무엇입니까?May 12, 2025 am 12:13 AM

classselectorsareversatiledreusable, whileDselectorsareUniqueAndspecific.1) USECLASSSELECTORS (DENOTEDBY.) ForstylingMultipleElementSwithSharedCharacteristics

CSS IDS 대 클래스 : 실제 차이점CSS IDS 대 클래스 : 실제 차이점May 12, 2025 am 12:10 AM

idsareUniqueIndifiersforsinglelemes, whileclassesstylemultipleements.1) useidsforuniqueElements 및 Javascripthooks.2) useclassessforusable, flexiblestylingacrossmultipleelements.

CSS : 클래스 만 사용하면 어떻게됩니까?CSS : 클래스 만 사용하면 어떻게됩니까?May 12, 2025 am 12:09 AM

클래스 전용 선택기를 사용하면 코드 재사용 성과 유지 관리가 향상 될 수 있지만 클래스 이름 및 우선 순위를 관리해야합니다. 1. 재사용 성과 유연성 향상, 2. 여러 클래스를 결합하여 복잡한 스타일을 만들고, 3. 긴 클래스 이름과 우선 순위로 이어질 수 있습니다.

CSS의 ID 및 클래스 선택기 : 초보자 안내서CSS의 ID 및 클래스 선택기 : 초보자 안내서May 12, 2025 am 12:06 AM

ID 및 클래스 선택기는 각각 고유 및 멀티 요소 스타일 설정에 CSS에서 사용됩니다. 1. ID 선택기 (#)는 특정 탐색 메뉴와 같은 단일 요소에 적합합니다. 2. 클래스 선택기 (.)는 통합 버튼 스타일과 같은 여러 요소에 사용됩니다. ID는주의해서 사용하고 과도한 특이성을 피하며 스타일 재사용 성과 유연성을 향상시키기 위해 클래스를 우선시해야합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.