SEO에 대한 빠르게 간략한 이해

신석진( Seokjin Shin)·2024년 6월 20일
2
post-thumbnail

개요

요즘 사람들은 대부분 검색 엔진을 통해 필요한 정보를 찾습니다. 이에 따라 내 웹사이트나 콘텐츠가 검색 순위 상위에 노출되는 것에 대한 중요도가 높아졌습니다. 효과적인 SEO 전략은 사용자 경험을 개선하고, 웹사이트의 성능을 향상시키며, 결과적으로 사용자들이 찾는 서비스가 되는데 큰 도움이 됩니다.

검색엔진 크롤러의 동작

검색엔진마다 다른 이름의 크롤러를 가지고 있습니다.

  • 구글: Googlebot
  • 네이버: Yeti
  • 다음: Daum
  • 빙: Bingbot
  • 덕덕고: DuckDuckBot

이를 총칭하여 크롤러라고 부르도록 하겠습니다.
현재 작성하는 글은 대부분 Googlebot의 자료이므로 다른 크롤러와는 동작이 다를 수 있습니다. 허나 기본적인 크롤링 흐름을 살펴보겠습니다.

  1. 사이트맵 확인
    크롤러는 먼저 웹사이트의 사이트맵을 확인하고 방문할 곳을 파악합니다.

  2. robots.txt 파일 확인
    크롤러는 웹사이트의 robots.txt 파일을 확인하여 크롤링이 허용되는 페이지와 금지되는 페이지를 파악합니다.

  3. 페이지 구조 및 내용 분석
    크롤러는 웹페이지의 HTML 구조와 텍스트 콘텐츠를 분석하여 해당 페이지의 주제와 정보를 이해합니다.

  4. 페이지 로딩 속도 확인
    크롤러는 웹페이지의 로딩 속도를 측정하여 크롤링 효율을 평가합니다. 로딩 속도가 느린 페이지는 크롤링이 어려울 수 있습니다.

  5. 모바일 최적화 상태 점검
    크롤러는 모바일 기기에서의 웹페이지 렌더링 상태를 확인하여 모바일 최적화가 잘 되어 있는지 판단합니다.

  6. 구조화된 데이터 마크업 검토
    크롤러는 웹페이지의 구조화된 데이터 마크업(Schema.org 등)을 확인하여 페이지 내용에 대한 이해도를 높입니다.

  7. 전체적인 기술적 품질 평가
    크롤러는 이상의 요소들을 종합적으로 평가하여 웹사이트의 전반적인 기술적 품질을 판단합니다.

이와 같은 순서로 크롤러는 웹사이트의 기술적 SEO 요소들을 확인하고 분석하여 효과적인 크롤링과 검색 엔진 노출을 위한 기반을 마련합니다.

SEO 적용

앞서 살펴본 크롤러의 동작을 따라 SEO를 적용할 수 있는 법을 살펴봅시다.

  1. 웹페이지 로딩 속도 최적화
    웹페이지의 로딩 속도를 높여 사용자 경험을 개선하고 검색 엔진의 크롤링을 용이하게 합니다.
    번들 사이즈 최소화, 캐싱, CDN 등을 활용하여 이를 달성할 수 있습니다.

  2. 모바일 최적화
    웹사이트에 대한 평가를 진행할 때 모바일 기기에 최적화를 기준으로 삼고 있기에 반응형 디자인이나 터치 등의 모바일 접근성과 사용성을 높여야합니다.

  3. 구조화된 데이터 마크업
    크롤러에게 좀 더 상세한 데이터를 마크업을 통해 전달하여 검색 엔진의 이해도를 높입니다.
    예시: 구글/네이버

<script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Recipe",
      "name": "Party Coffee Cake",
      "author": {
        "@type": "Person",
        "name": "Mary Stone"
      },
      "datePublished": "2018-03-10",
      "description": "This coffee cake is awesome and perfect for parties.",
      "prepTime": "PT20M"
    }
</script>
  1. 사이트맵 제공
    크롤러는 기본적으로 방문했던 웹사이트를 인덱싱하여 방문횟수를 최적화합니다. 때문에 정보를 잘 정리한 사이트맵을 제공하면 검색 엔진의 크롤링의 효율을 올리고 불필요한 인덱싱을 줄일 수 있습니다.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <sitemap>
      <loc>http://www.example.com/sitemap1.xml.gz</loc>
      <lastmod>2004-10-01T18:23:17+00:00</lastmod>
   </sitemap>
   <sitemap>
      <loc>http://www.example.com/sitemap2.xml.gz</loc>
      <lastmod>2005-01-01</lastmod>
   </sitemap>
</sitemapindex>
  1. robots.txt 파일 관리
    검색 엔진의 크롤링을 허용 또는 차단하는 robots.txt 파일을 적절히 관리하여 웹사이트의 노출을 최적화합니다.
# 대상: 네이버 크롤러 (Yeti) & 덕덕고 크롤러 (DuckDuckBot)
# 제한 디렉토리 1: /not-for-naver-and-duckduckgo-1/ 이하
# 제한 디렉토리 2: /not-for-naver-and-duckduckgo-2/ 이하
# 제한 디렉토리 3: /not-for-naver-and-duckduckgo-3/ 이하
# 대상: 다음 크롤러 (Daum)
# 제한 디렉토리 1: /not-for-daum-1/ 이하
# 제한 디렉토리 2: /not-for-daum-2/ 이하

User-agent: Yeti
User-agent: DuckDuckBot
Disallow: /not-for-naver-and-duckduckgo-1/
Disallow: /not-for-naver-and-duckduckgo-2/
Disallow: /not-for-naver-and-duckduckgo-3/

User-agent: Daum
Disallow: /not-for-daum1/
Disallow: /not-for-daum2/

마무리

SEO 관련된 검색 엔진별 세부 사항들이 있지만 간략하게 알아보았습니다. SEO를 적용하면서 웹사이트의 검색 엔진에서의 노출도 증가는 물론이고 적용하면서 따라오는 사용자 경험 향상 또한 큰 이점이므로 웹 서비스를 제공하는 개발자라면 이를 적용해서 지표를 살표보는 것도 재밌고 의미있는 경험일 것 같습니다.

0개의 댓글