🔍 SEO 기초
📖 정의
SEO(Search Engine Optimization, 검색 엔진 최적화)는 웹사이트가 검색 엔진 결과 페이지(SERP)에서 더 높은 순위를 차지하도록 최적화하는 과정입니다. 구글, 네이버 등의 검색 엔진이 웹사이트를 잘 이해하고 평가할 수 있도록 콘텐츠, 구조, 기술적 요소를 개선합니다. 좋은 SEO는 더 많은 트 래픽과 사용자를 유입시킵니다.
🎯 비유로 이해하기
도서관 카탈로그
SEO를 도서관에 비유하면:
도서관 (검색 엔진)
├─ 사서 (크롤러) - 책 수집 및 분류
├─ 카탈로그 (인덱스) - 책 정보 정리
└─ 분류 시스템 (알고리즘) - 책 순서 결정
좋은 책 (SEO 잘된 웹사이트)
├─ 명확한 제목 (Title Tag)
├─ 상세한 목차 (Headings)
├─ 관련 키워드 (Keywords)
├─ 다른 책의 추천 (Backlinks)
└─ 읽기 쉬운 내용 (UX)
가게와 간판
실제 가게
├─ 큰 간판 (Title)
├─ 가게 설명 (Description)
├─ 유리창 진열 (Featured Image)
├─ 접근성 좋은 위치 (Site Speed)
└─ 고객 추천 (Backlinks)
검색 결과 = 온라인 쇼핑몰의 가게 목록
SEO = 내 가게를 눈에 잘 띄게 만들기
⚙️ 작동 원리
1. 검색 엔진 작동 과정
1. 크롤링 (Crawling)
└─ 봇이 웹을 돌아다니며 페이지 수집
2. 인덱싱 (Indexing)
└─ 수집한 페이지를 데이터베이스에 저장
3. 랭킹 (Ranking)
└ ─ 검색어에 맞는 페이지 순위 결정
4. 결과 표시
└─ 사용자에게 검색 결과 제공
2. SEO의 3가지 축
On-Page SEO (페이지 내부)
├─ 콘텐츠 품질
├─ 메타 태그
├─ URL 구조
└─ 내부 링크
Off-Page SEO (페이지 외부)
├─ 백링크
├─ 소셜 신호
└─ 브랜드 언급
Technical SEO (기술적)
├─ 사이트 속도
├─ 모바일 친화성
├─ 구조화된 데이터
└─ 보안 (HTTPS)
💡 실제 예시
HTML 메타 태그
<!DOCTYPE html>
<html lang="ko">
<head>
<!-- 필수: 제목 (검색 결과에 표시) -->
<title>React 완벽 가이드 - 초보자를 위한 튜토리얼</title>
<!-- 필수: 설명 (검색 결과 스니펫) -->
<meta name="description" content="React의 기초부터 실전까지, 예제 코드와 함께 배우는 완벽 가이드입니다. 컴포넌트, Hook, 상태 관리를 쉽게 배워보세요.">
<!-- 키워드 (현대에는 거의 사용 안 함) -->
<meta name="keywords" content="React, JavaScript, 프론트엔드, 튜토리얼">
<!-- 작성자 -->
<meta name="author" content="김개발">
<!-- 로봇 지시 -->
<meta name="robots" content="index, follow">
<!-- noindex: 인덱싱 금지, nofollow: 링크 추적 금지 -->
<!-- Open Graph (소셜 미디어) -->
<meta property="og:title" content="React 완벽 가이드">
<meta property="og:description" content="React를 쉽게 배워보세요">
<meta property="og:image" content="https://example.com/react-guide.jpg">
<meta property="og:url" content="https://example.com/react-guide">
<meta property="og:type" content="article">
<!-- Twitter Card -->
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="React 완벽 가이드">
<meta name="twitter:description" content="React를 쉽게 배워보세요">
<meta name="twitter:image" content="https://example.com/react-guide.jpg">
<!-- 캐노니컬 URL (중복 콘텐츠 방지) -->
<link rel="canonical" href="https://example.com/react-guide">
<!-- 파비콘 -->
<link rel="icon" href="/favicon.ico">
</head>
<body>
<!-- 콘텐츠 -->
</body>
</html>
시맨틱 HTML과 구조
<!-- ❌ 나쁜 예: div 범벅 -->
<div class="header">
<div class="nav">...</div>
</div>
<div class="main">
<div class="article">
<div class="title">제목</div>
<div class="content">내용...</div>
</div>
</div>
<!-- ✅ 좋은 예: 시맨틱 태그 -->
<header>
<nav>
<ul>
<li><a href="/">홈</a></li>
<li><a href="/blog">블로그</a></li>
</ul>
</nav>
</header>
<main>
<article>
<!-- H1은 페이지당 하나 -->
<h1>React란 무엇인가?</h1>
<section>
<h2>React의 특징</h2>
<p>React는 컴포넌트 기반...</p>
<h3>컴포넌트</h3>
<p>재사용 가능한...</p>
<h3>Virtual DOM</h3>
<p>효율적인 렌더링...</p>
</section>
<section>
<h2>React 시작하기</h2>
<p>