diff --git a/doc/etc/Atom.md b/doc/etc/Atom.md deleted file mode 100644 index 9724667..0000000 --- a/doc/etc/Atom.md +++ /dev/null @@ -1,59 +0,0 @@ -# Atom - -```xml - - - Example Feed - - 2003-12-13T18:30:02Z - - John Doe - - urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6 - - Atom-Powered Robots Run Amok - - urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a - 2003-12-13T18:30:02Z - Some text. - - -``` - -- feed - - id - - title - - updated - - author - - link - - category - - contributor - - name - - url - - email - - generator - - icon - - logo - - rights - - subtitle -- entry - - id - - title - - updated - - author - - name - - url - - email - - content - - link - - summary - - category - - contributor - - name - - url - - email - - published - - rights - - source - -https://validator.w3.org/feed/docs/atom.html \ No newline at end of file diff --git a/doc/etc/Robots.md b/doc/etc/Robots.md deleted file mode 100644 index 66c862a..0000000 --- a/doc/etc/Robots.md +++ /dev/null @@ -1,5 +0,0 @@ -# Robots.txt - -http://www.robotstxt.org/ - -http://humanstxt.org/ \ No newline at end of file diff --git a/doc/etc/Rss.md b/doc/etc/Rss.md deleted file mode 100644 index 77ad28e..0000000 --- a/doc/etc/Rss.md +++ /dev/null @@ -1,56 +0,0 @@ -# RSS - -```xml - - - - - - - - - - - - -``` - -- channel - - title - - link - - description - - language - - copyright - - managingEditor - - webMaster - - pubDate - - lastBuildDate - - category - - generator - - docs - - cloud - - ttl - - image - - url - - title - - link - - textInput - - title - - description - - name - - link - - skipHours - - skipDays -- item - - title - - link - - description - - author - - catogory - - comments - - enclosure - - guid - - pubDate - - source - -https://validator.w3.org/feed/docs/rss2.html \ No newline at end of file diff --git a/doc/etc/Seo.md b/doc/etc/Seo.md deleted file mode 100644 index f92b535..0000000 --- a/doc/etc/Seo.md +++ /dev/null @@ -1,5 +0,0 @@ -# SEO - -https://developers.google.com/search/docs/advanced/guidelines/get-started?hl=ko - -https://searchadvisor.naver.com/guide \ No newline at end of file diff --git a/doc/etc/Sitemap.md b/doc/etc/Sitemap.md deleted file mode 100644 index 4dc24a8..0000000 --- a/doc/etc/Sitemap.md +++ /dev/null @@ -1,37 +0,0 @@ -# sitemap.xml - -```xml - - - - http://www.example.com/ - 2005-01-01 - monthly - 0.8 - - -``` - -- urlset - - 필수. - -- url - - 필수. - -- loc - - 필수. - -- lastmod - - ISO 8601 - -- changefreq - -- priority - - 0. 0~ 1.0 - -https://www.sitemaps.org/ko/protocol.html \ No newline at end of file diff --git a/doc/etc/Syndication.md b/doc/etc/Syndication.md deleted file mode 100644 index 32b3d32..0000000 --- a/doc/etc/Syndication.md +++ /dev/null @@ -1,3 +0,0 @@ -# Syndication - -Start typing here... \ No newline at end of file diff --git a/doc/seo/00_seo.md b/doc/seo/00_seo.md new file mode 100644 index 0000000..f1649f5 --- /dev/null +++ b/doc/seo/00_seo.md @@ -0,0 +1,47 @@ +# SEO(검색 엔진 최적화) + +SEO는 Search Engine Optimization의 약자로, 검색 엔진 최적화라고 합니다. 즉, 구글, 네이버 등의 검색 엔진에서 특정 키워드로 검색했을 때 내 웹사이트가 상위에 노출될 수 있도록 웹사이트를 최적화하는 작업을 의미합니다. + +* 높은 가시성: 검색 엔진 상위 노출을 통해 더 많은 사람들에게 웹사이트를 알릴 수 있습니다. +* 높은 트래픽: 검색을 통해 웹사이트로 유입되는 방문자 수를 늘릴 수 있습니다. +* 높은 전환율: 웹사이트 방문자를 고객으로 전환시킬 가능성을 높입니다. +* 브랜드 인지도 향상: 검색 결과 상위에 노출되면 브랜드 인지도를 높일 수 있습니다. + +SEO는 크게 온페이지 최적화와 오프페이지 최적화로 나눌 수 있습니다. + +## 온페이지 최적화 +* 키워드 선정: 타겟 고객이 사용할 만한 키워드를 선정하고, 콘텐츠에 자연스럽게 포함시킵니다. +* 콘텐츠 최적화: 양질의 콘텐츠를 지속적으로 제공하고, 키워드를 적절하게 활용하여 콘텐츠의 가치를 높입니다. +* HTML 구조 최적화: 웹사이트의 구조를 검색 엔진이 쉽게 이해할 수 있도록 최적화합니다. +* 이미지 최적화: 이미지 파일 크기를 줄이고, alt 속성을 활용하여 이미지에 대한 설명을 추가합니다. +* 사이트 속도 개선: 웹 페이지 로딩 속도를 빠르게 하여 사용자 경험을 향상시킵니다. + +## 오프페이지 최적화 +* 백링크 구축: 다른 웹사이트에서 자신의 웹사이트로 연결되는 링크를 늘립니다. +* 소셜 미디어 마케팅: 소셜 미디어를 통해 웹사이트를 홍보하고, 사용자 참여를 유도합니다. +* 지역 SEO: 지역 기반 키워드를 활용하여 지역 검색에서 노출을 높입니다. + +## SEO를 위한 추가적인 노력들 +* 모바일 친화적인 웹사이트 구축: 모바일 사용자가 증가함에 따라 모바일 환경에서도 웹사이트가 잘 보여지도록 최적화해야 합니다. +* 사용자 경험 개선: 사용자가 웹사이트를 쉽게 탐색하고 원하는 정보를 빠르게 찾을 수 있도록 사용자 경험을 개선해야 합니다. +* 지속적인 관리: SEO는 단발적인 작업이 아니라 지속적인 관리가 필요합니다. + +## SEO 도구 +* 구글 검색 콘솔: 웹사이트의 검색 엔진 노출 현황을 확인하고 문제점을 진단할 수 있는 도구입니다. +* 구글 애널리틱스: 웹사이트 방문자의 행동을 분석하여 웹사이트 개선에 활용할 수 있는 도구입니다. +* 다양한 SEO 분석 도구: 키워드 분석, 경쟁 분석 등 다양한 기능을 제공하는 유료/무료 SEO 분석 도구들이 있습니다. + +--- + +키워드 리서치 +메타 태그 +로봇.txt +사이트맵 +검색 엔진 알고리즘 +콘텐츠 마케팅 +기술적 SEO + + +https://developers.google.com/search/docs/advanced/guidelines/get-started?hl=ko + +https://searchadvisor.naver.com/guide \ No newline at end of file diff --git a/doc/seo/01_keyword_research.md b/doc/seo/01_keyword_research.md new file mode 100644 index 0000000..fe368d5 --- /dev/null +++ b/doc/seo/01_keyword_research.md @@ -0,0 +1,33 @@ +# 키워드 리서치 + +SEO(검색 엔진 최적화)에서 키워드 리서치는 가장 기본이자 중요한 작업입니다. 마치 활쏘기에서 과녁을 정확하게 맞추기 위해 표적을 설정하는 것과 같이, 키워드 리서치는 우리의 웹사이트가 노출될 목표를 정하는 과정이라고 할 수 있습니다. + +키워드 리서치는 잠재 고객들이 검색 엔진에 입력하는 검색어를 찾아 분석하는 과정입니다. 이를 통해 우리의 웹사이트에 가장 적합한 키워드를 선정하고, 콘텐츠를 제작하며, 광고를 집행하는 등 다양한 마케팅 활동에 활용할 수 있습니다. + +* 타겟 고객 파악: 어떤 키워드를 검색하는지 분석하여 타겟 고객의 니즈를 파악할 수 있습니다. +* 콘텐츠 제작: 키워드를 중심으로 콘텐츠를 제작하여 검색 엔진 노출을 높일 수 있습니다. +* 경쟁 분석: 경쟁사가 어떤 키워드로 노출되고 있는지 분석하여 차별화된 전략을 수립할 수 있습니다. +* 광고 효율성 증대: 키워드 광고에 예산을 효율적으로 배분할 수 있습니다. + +## 키워드 리서치 방법 + +* 브레인스토밍: 웹사이트의 주제와 관련된 모든 키워드를 떠올려 목록을 작성합니다. +* 경쟁사 분석: 경쟁사 웹사이트에서 어떤 키워드를 사용하고 있는지 분석합니다. +* 키워드 도구 활용: + - 구글 키워드 플래너: 구글에서 제공하는 무료 도구로, 검색량, 경쟁 정도 등을 확인할 수 있습니다. + - SEMrush, Ahrefs: 유료 도구지만 더욱 다양한 기능과 정확한 데이터를 제공합니다. +* 롱테일 키워드 활용: 경쟁이 심한 주요 키워드 대신, 보다 구체적이고 긴 키워드를 활용하여 트래픽을 유입할 수 있습니다. +* 사용자 의도 파악: 키워드를 검색하는 사용자의 의도를 파악하여 더욱 정확한 콘텐츠를 제공합니다. + +## 키워드 선정 시 고려해야 할 사항 + +* 검색량: 많은 사람들이 검색하는 키워드일수록 좋습니다. +* 경쟁 강도: 경쟁이 너무 심한 키워드는 노출이 어려울 수 있습니다. +* 관련성: 웹사이트의 주제와 관련성이 높은 키워드를 선택해야 합니다. +* 사용자 의도: 사용자가 어떤 정보를 찾고 있는지 파악하고, 그에 맞는 키워드를 선택해야 합니다. + +--- + +구글 키워드 플래너: https://ads.google.com/keywordplanner/ +SEMrush: https://www.semrush.com/ +Ahrefs: https://ahrefs.com/ diff --git a/doc/seo/02_metatags.md b/doc/seo/02_metatags.md new file mode 100644 index 0000000..a23cb90 --- /dev/null +++ b/doc/seo/02_metatags.md @@ -0,0 +1,33 @@ +# 메타 태그 + +메타 태그는 HTML 문서의 헤드(head) 부분에 추가하여 검색 엔진에게 웹 페이지에 대한 정보를 제공하는 역할을 합니다. 메타 태그는 검색 엔진이 웹 페이지를 이해하고 검색 결과에 노출하는 데 중요한 역할을 하므로, SEO를 위해 반드시 신경써야 하는 부분입니다. + +* `` + - 웹 페이지의 제목을 나타냅니다. + - 검색 결과에 표시되는 가장 중요한 요소 중 하나입니다. + - 키워드를 포함하여 작성하는 것이 좋습니다. +* `<meta name="description" content="">` + - 웹 페이지의 내용을 간략하게 설명하는 메타 설명입니다. + - 검색 결과에 표시되는 설명 부분에 사용됩니다. + - 키워드를 포함하고, 사용자가 클릭하고 싶도록 매력적인 문구로 작성해야 합니다. +* `<meta name="keywords" content="">` + - 웹 페이지의 주요 키워드를 나열하는 태그입니다. + - 최근에는 검색 엔진에서 중요도가 낮아졌지만, 여전히 일부 검색 엔진에서 참고하는 경우가 있습니다. +* `<meta name="robots" content="">` + - 검색 엔진 크롤러에게 웹 페이지를 어떻게 처리할지 지시하는 태그입니다. + - index, noindex, follow, nofollow 등의 속성을 사용하여 크롤링 및 색인 여부를 설정할 수 있습니다. + +## 메타 태그 작성 시 주의사항 +* 독창성: 다른 웹사이트와 중복되지 않도록 고유한 메타 태그를 작성해야 합니다. +* 정확성: 메타 태그의 내용은 웹 페이지의 내용과 일치해야 합니다. +* 키워드 자연스럽게 포함: 키워드를 과도하게 반복하거나 부자연스럽게 사용하지 마세요. +* 메타 설명 길이: 검색 엔진마다 다르지만, 일반적으로 150~160자 이내로 작성하는 것이 좋습니다. + +```html +<head> + <title>SEO 가이드 - 검색 엔진 최적화 방법 + + + + +``` \ No newline at end of file diff --git a/doc/seo/03_robot_txt.md b/doc/seo/03_robot_txt.md new file mode 100644 index 0000000..246ad68 --- /dev/null +++ b/doc/seo/03_robot_txt.md @@ -0,0 +1,49 @@ +# robots.txt + +robots.txt 파일은 웹사이트의 뿌리 디렉토리에 위치하는 텍스트 파일로, 검색 엔진 크롤러에게 어떤 페이지를 크롤링하고 색인할 수 있는지에 대한 지침을 제공하는 파일입니다. 마치 웹사이트의 안내판과 같은 역할을 하며, 검색 엔진이 웹사이트를 효율적으로 크롤링하고 색인하는 데 도움을 줍니다. + +* 검색 엔진 크롤링 제어: 검색 엔진이 특정 페이지나 디렉토리를 크롤링하지 못하도록 설정할 수 있습니다. +* 사이트 부하 감소: 불필요한 페이지를 크롤링하지 않도록 함으로써 서버 부하를 줄일 수 있습니다. +* 개인 정보 보호: 개인 정보가 포함된 페이지를 검색 엔진에서 노출되지 않도록 할 수 있습니다. +* 중복 콘텐츠 방지: 동일하거나 유사한 콘텐츠가 여러 URL에 존재할 경우, 검색 엔진이 하나의 URL만 색인하도록 지시할 수 있습니다. + +## robots.txt 파일의 기본 구조 +``` +User-agent: * +Disallow: /admin/ +Disallow: /cgi-bin/ +``` +* User-agent: 어떤 크롤러에게 지시를 내릴 것인지 지정합니다. *는 모든 크롤러를 의미합니다. +* Disallow: 크롤링을 금지할 디렉토리나 파일을 지정합니다. + +## robots.txt 파일의 주요 지시문 +* User-agent: 특정 크롤러를 지정합니다. +* Disallow: 지정된 URL을 크롤링하지 못하도록 합니다. +* Allow: 지정된 URL을 크롤링할 수 있도록 허용합니다. +* Sitemap: 사이트맵의 위치를 지정합니다. +* Crawl-delay: 크롤링 간의 간격을 지정합니다. + +## robots.txt 파일 작성 시 주의사항 +* 정확한 문법: robots.txt 파일의 문법이 틀리면 의도한대로 작동하지 않을 수 있습니다. +* 과도한 제한: 너무 많은 페이지를 차단하면 검색 엔진이 웹사이트를 제대로 이해하지 못할 수 있습니다. +* 동적 콘텐츠: 동적 콘텐츠는 robots.txt 파일로 제어하기 어려울 수 있습니다. 자바스크립트 렌더링된 페이지는 검색 엔진이 직접 읽을 수 없기 때문입니다. +* 변경 사항 반영: robots.txt 파일을 변경한 후에는 검색 엔진이 변경 사항을 반영하는 데 시간이 걸릴 수 있습니다. + +## robots.txt 파일 예시 +``` +User-agent: * +Disallow: /admin/ +Disallow: /cgi-bin/ +Disallow: /tmp/ +Sitemap: https://www.example.com/sitemap.xml +``` +위 예시는 모든 크롤러에게 /admin/, /cgi-bin/, /tmp/ 디렉토리에 대한 접근을 금지하고, 사이트맵의 위치를 지정하는 예입니다. + +> robots.txt 파일은 검색 엔진 크롤러에게 지침을 제공하는 것이지, 검색 엔진이 반드시 따라야 하는 절대적인 규칙은 아닙니다. 검색 엔진은 robots.txt 파일의 내용을 무시하고 크롤링을 진행할 수도 있습니다. + + +--- + +http://www.robotstxt.org/ + +http://humanstxt.org/ \ No newline at end of file diff --git a/doc/seo/04_sitemap.md b/doc/seo/04_sitemap.md new file mode 100644 index 0000000..313678c --- /dev/null +++ b/doc/seo/04_sitemap.md @@ -0,0 +1,48 @@ +# 사이트맵 +사이트맵은 웹사이트의 모든 페이지를 목록으로 정리한 파일입니다. 마치 책의 목차와 같이, 검색 엔진에게 웹사이트의 구조를 알려주는 역할을 합니다. 검색 엔진은 사이트맵을 참고하여 웹사이트를 더 효율적으로 크롤링하고 색인할 수 있습니다. + +* 검색 엔진 크롤링 지원: 검색 엔진이 웹사이트의 모든 페이지를 찾아내도록 돕습니다. +* 새로운 페이지 알림: 새롭게 추가된 페이지를 검색 엔진에 빠르게 알릴 수 있습니다. +* 큰 규모의 사이트 관리: 대규모 웹사이트의 경우, 사이트맵을 통해 검색 엔진이 중요한 페이지를 우선적으로 크롤링하도록 유도할 수 있습니다. +* 동적 콘텐츠: 자주 변경되는 콘텐츠를 가진 웹사이트의 경우, 사이트맵을 통해 검색 엔진에 최신 정보를 제공할 수 있습니다. + +```xml + + + + http://www.example.com/ + 2005-01-01 + monthly + 0.8 + + +``` + +## 사이트맵의 종류 +* XML 사이트맵: 가장 일반적인 형식이며, 검색 엔진에서 널리 지원됩니다. XML 형식으로 작성되며, URL, 변경 시간 등의 정보를 포함합니다. +* HTML 사이트맵: 사람이 보기 쉽도록 HTML 형식으로 작성된 사이트맵입니다. 검색 엔진보다는 사용자를 위한 정보 제공 목적으로 사용됩니다. +* 이미지 사이트맵: 이미지 파일을 위한 사이트맵으로, 이미지 파일의 URL과 관련 정보를 제공합니다. +* 비디오 사이트맵: 동영상 파일을 위한 사이트맵으로, 동영상 파일의 URL과 관련 정보를 제공합니다. + +## 사이트맵의 구성 + +- urlset : 필수. +- url : 각 페이지의 URL을 지정합니다. 필수. +- loc : 필수. +- lastmod : 페이지가 마지막으로 변경된 시간을 지정합니다. ISO 8601 +- changefreq : 페이지가 변경되는 빈도를 나타냅니다. +- priority : 페이지의 중요도를 나타내는 값입니다. 0.0~ 1.0 + +## 사이트맵 제출 방법 +* 구글 검색 콘솔: 구글 검색 콘솔에 사이트맵을 제출하여 구글 크롤러가 사이트맵을 확인하도록 합니다. +* 다른 검색 엔진: 네이버, Bing 등 다른 검색 엔진에도 사이트맵을 제출할 수 있습니다. + +## 사이트맵 생성 방법 +* 수동 생성: XML 형식으로 직접 사이트맵 파일을 작성합니다. +* CMS 플러그인: 워드프레스, 윅스 등의 CMS에서는 사이트맵을 자동으로 생성해주는 플러그인을 제공합니다. +* 사이트맵 생성 도구: 온라인 사이트맵 생성 도구를 이용하여 간편하게 사이트맵을 만들 수 있습니다. + + +--- + +https://www.sitemaps.org/ko/protocol.html \ No newline at end of file diff --git a/doc/seo/05_humans_txt.md b/doc/seo/05_humans_txt.md new file mode 100644 index 0000000..d64d648 --- /dev/null +++ b/doc/seo/05_humans_txt.md @@ -0,0 +1,49 @@ +# humans.txt 파일 + +humans.txt 파일은 웹사이트에 대한 인간적인 측면을 보여주는 간단한 텍스트 파일입니다. 마치 웹사이트의 'About Us' 페이지처럼, 누가 이 웹사이트를 만들고 운영하는지, 어떤 사람들이 참여했는지 등의 정보를 직접적으로 표현합니다. + +* 투명성: 웹사이트 운영에 참여한 사람들을 공개하여 신뢰도를 높일 수 있습니다. +* 개발자 커뮤니티 참여: 다른 개발자들에게 영감을 주고, 협업을 장려할 수 있습니다. +* 사용자와의 소통: 사용자에게 웹사이트에 대한 더욱 깊은 이해를 제공할 수 있습니다. +* 인간적인 측면 강조: 웹사이트가 단순한 정보 제공 공간이 아니라, 사람들이 만들고 운영하는 곳임을 보여줍니다. + +## humans.txt 파일에 담긴 정보 +* 웹사이트 제작에 참여한 사람들의 이름: 개발자, 디자이너, 작가 등 +* 연락처: 이메일, 소셜 미디어 계정 등 +* 웹사이트에 대한 간략한 소개: 웹사이트의 목적이나 비전 등 +* 사용된 기술: 웹사이트를 만드는 데 사용된 기술이나 도구 +* 감사의 말: 도움을 준 사람들에게 감사를 표현 +* 저작권 정보: 웹사이트의 저작권 정보 + +## humans.txt +``` +# humans.txt + +** Who we are ** + +This website was created by: + +* John Doe (johndoe@example.com) - Developer +* Jane Smith (janesmith@example.com) - Designer + +** What we use ** + +We built this site using: +* HTML5 +* CSS3 +* JavaScript +* Python (Flask) + +** Get in touch ** +Feel free to contact us at hello@example.com +``` + +## 장점 +* 간단하고 직관적: 누구나 쉽게 이해할 수 있는 형식으로 정보를 제공합니다. +* 자유로운 형식: 특별한 규칙 없이 원하는 방식으로 정보를 작성할 수 있습니다. +* 커뮤니티 참여: 다른 웹사이트의 humans.txt 파일을 참고하고, 자신만의 스타일을 만들 수 있습니다. + +## 단점 +* 검색 엔진 노출: 검색 엔진에서 humans.txt 파일이 노출되지 않을 수 있습니다. +* 보안: 개인 정보를 노출할 수 있으므로 주의해야 합니다. + diff --git a/doc/seo/06_syndication.md b/doc/seo/06_syndication.md new file mode 100644 index 0000000..a1068ac --- /dev/null +++ b/doc/seo/06_syndication.md @@ -0,0 +1,154 @@ +# 신디케이션(Syndication) + +**신디케이션(Syndication)**은 하나의 콘텐츠를 여러 매체나 플랫폼을 통해 동시에 배포하는 것을 의미합니다. 마치 신문사가 자사의 기사를 다른 매체에 제공하여 더 많은 사람들에게 알리는 것처럼, 다양한 분야에서 활용되는 개념입니다. + +## RSS +**RSS(Really Simple Syndication)**는 웹 사이트의 새로운 콘텐츠를 구독자가 쉽게 확인할 수 있도록 하는 표준화된 형식입니다. 마치 신문을 구독하는 것처럼, 자신이 원하는 웹사이트의 최신 정보를 한 곳에서 모아 볼 수 있도록 해주는 것이죠. + +### RSS의 작동 원리 +* 웹사이트에서 RSS 피드 생성: 웹사이트 운영자는 RSS 피드를 생성하여 자신의 콘텐츠를 배포합니다. +* RSS 리더에서 구독: 사용자는 RSS 리더를 통해 원하는 웹사이트의 RSS 피드를 구독합니다. +* 콘텐츠 업데이트: 웹사이트에 새로운 콘텐츠가 추가되면 RSS 피드가 자동으로 업데이트됩니다. +* RSS 리더에서 확인: 사용자는 RSS 리더를 통해 업데이트된 내용을 확인하고 원하는 콘텐츠를 클릭하여 해당 웹사이트로 이동합니다. + +### RSS의 장점 +* 편리한 정보 수집: 여러 웹사이트를 일일이 방문하지 않고도 원하는 정보를 한곳에서 확인할 수 있습니다. +* 개인 맞춤형 정보 제공: 자신이 관심 있는 분야의 정보만을 선택적으로 구독할 수 있습니다. +* 오프라인에서도 이용 가능: 일부 RSS 리더는 오프라인에서도 콘텐츠를 볼 수 있도록 지원합니다. +### RSS의 단점 +* 인지도 부족: 많은 사용자들이 RSS에 대해 잘 알지 못합니다. +* 소셜 미디어의 부상: 소셜 미디어가 발달하면서 RSS의 중요성이 상대적으로 줄어들었습니다. + +### RSS 2.0 +```xml + + + + + + + + + + + + +``` +- channel + - title + - link + - description + - language + - copyright + - managingEditor + - webMaster + - pubDate + - lastBuildDate + - category + - generator + - docs + - cloud + - ttl + - image + - url + - title + - link + - textInput + - title + - description + - name + - link + - skipHours + - skipDays +- item + - title + - link + - description + - author + - catogory + - comments + - enclosure + - guid + - pubDate + - source + + +## Atom + +Atom 프로토콜은 RSS와 함께 웹 콘텐츠를 신디케이션(syndication)하기 위한 표준 프로토콜 중 하나입니다. 즉, 웹사이트의 새로운 콘텐츠를 다른 웹사이트나 애플리케이션에서 쉽게 구독하고 활용할 수 있도록 하는 기술입니다. + +### RSS와 Atom은 모두 웹 피드를 위한 표준이지만, 몇 가지 차이점이 있습니다. + +* 개발 배경: RSS는 블로그 플랫폼에서 시작된 반면, Atom은 웹 표준화 단체인 IETF(Internet Engineering Task Force)에서 개발되어 더욱 개방적이고 확장성이 뛰어납니다. +* 구조: Atom은 XML 기반으로 더욱 정교하고 확장 가능한 구조를 가지고 있습니다. +* 기능: Atom은 RSS보다 더 다양한 기능을 제공하며, 특히 웹 콘텐츠의 변경 내역을 추적하는 기능이 강화되어 있습니다. + +### Atom의 주요 구성 요소 +* 피드: 전체 콘텐츠의 목록을 나타내는 부분입니다. +* 항목: 개별 콘텐츠(예: 블로그 게시글)를 나타내는 부분입니다. +* 링크: 관련된 웹 페이지의 URL을 지정합니다. +* 업데이트: 콘텐츠가 마지막으로 업데이트된 시간을 나타냅니다. +* 저자: 콘텐츠를 작성한 사람의 정보를 나타냅니다. + +### Atom 1.0 + +```xml + + + Example Feed + + 2003-12-13T18:30:02Z + + John Doe + + urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6 + + Atom-Powered Robots Run Amok + + urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a + 2003-12-13T18:30:02Z + Some text. + + +``` +#### 태그 +- feed + - id + - title + - updated + - author + - link + - category + - contributor + - name + - url + - email + - generator + - icon + - logo + - rights + - subtitle +- entry + - id + - title + - updated + - author + - name + - url + - email + - content + - link + - summary + - category + - contributor + - name + - url + - email + - published + - rights + - source + + +--- +https://validator.w3.org/feed/docs/rss2.html +https://validator.w3.org/feed/docs/atom.html \ No newline at end of file diff --git a/doc/seo/07_microdata.md b/doc/seo/07_microdata.md new file mode 100644 index 0000000..e1c531b --- /dev/null +++ b/doc/seo/07_microdata.md @@ -0,0 +1,37 @@ +# 마이크로데이터 + +마이크로데이터는 웹 페이지의 특정 요소에 대한 구체적인 정보를 제공하여 검색 엔진이 웹 페이지의 내용을 더 정확하게 이해할 수 있도록 돕는 기술입니다. 마치 사람이 웹 페이지를 보듯이, 검색 엔진도 웹 페이지의 구조와 의미를 파악하여 더욱 정확한 검색 결과를 제공할 수 있도록 돕는 것이죠. + +* 검색 엔진 최적화 (SEO): 검색 엔진이 웹 페이지의 내용을 더 정확하게 파악하여 검색 결과에서 더 높은 순위로 노출될 수 있도록 돕습니다. +* 리치 스니펫: 검색 결과에 웹 페이지의 정보가 더 풍부하게 표시될 수 있도록 합니다. 예를 들어, 별점, 가격, 상품 이미지 등이 검색 결과에 직접 표시될 수 있습니다. +* 웹 접근성 향상: 시각 장애인을 위한 스크린 리더가 웹 페이지를 더 잘 이해하도록 돕습니다. + +## 마이크로데이터의 구조 +마이크로데이터는 HTML5에서 도입된 기술로, HTML 태그에 특정 속성을 추가하여 구조화된 데이터를 표현합니다. + +* itemscope: 요소가 구조화된 데이터를 포함하고 있음을 나타냅니다. +* itemtype: 데이터의 종류를 나타냅니다. (예: Person, Product, Organization) +* itemprop: 데이터의 속성을 나타냅니다. (예: name, description, price) + +```html +
+ 홍길동 + 웹 개발자 +
+``` +위 예시는 "홍길동"이라는 사람의 이름과 직업을 마이크로데이터로 표현한 것입니다. + +## 마이크로데이터를 사용하는 이유 +* 검색 엔진에 대한 정보 제공: 검색 엔진은 마이크로데이터를 통해 웹 페이지의 내용을 더 정확하게 이해하고, 검색 결과를 풍부하게 만들 수 있습니다. +* 리치 스니펫: 검색 결과에 웹 페이지의 정보가 더 자세하게 표시되어 클릭률을 높일 수 있습니다. +* 웹 표준 준수: HTML5의 표준을 따르는 웹 개발을 가능하게 합니다. + +## 마이크로데이터의 종류 +* Schema.org: 가장 많이 사용되는 마이크로데이터 표준으로, 다양한 종류의 데이터를 표현하기 위한 구조화된 데이터를 제공합니다. +* Microdata.org: Schema.org와 유사한 또 다른 마이크로데이터 표준입니다. +* RDFa: Resource Description Framework in Attributes의 약자로, RDF를 기반으로 하는 마이크로데이터 표준입니다. + +## 마이크로데이터 활용 시 주의사항 +* 정확한 정보 제공: 마이크로데이터에 포함된 정보는 정확해야 합니다. +* 과도한 사용 지양: 너무 많은 마이크로데이터를 사용하면 웹 페이지의 로딩 속도가 느려질 수 있습니다. +* 지속적인 관리: 웹 페이지의 내용이 변경될 때마다 마이크로데이터도 함께 업데이트해야 합니다.