[Hexo Blog] 구글 사이트 등록 및 검색엔진 최적화(SEO)

Hexo 블로그를 만들었다면 구글에 키워드 서칭 시 내 블로그가 검색이 잘 되도록 하는 과정을 알아보자.

검색 최적화

구글 같은 검색 엔진을 주로 서비스하는 사이트들은 크롤링 이라고 하는 작업을 통해 여러 웹사이트나 블로그 들의 정보를 검색 엔진에 수집해서 사람들이 검색을 할 시 해당 사이트들을 사용자들에게 노출시킨다고 한다. 일단 기술 블로그만 만들면 장땡일 줄 알았는데 막상 이런 작업을 하려고 하니 막막하지만 블로그를 좀 더 개선할 수 있는 방법이기 때문에 바로 시작한다.


구글에 Hexo만 검색해도 검색엔진 최적화 라는 방법들을 여러 사람들이 쓰는 것을 알 수 있었는데, 줄여서 SEO 라고 한다. 즉 Search Engine Optimization 은 검색엔진에 맞게 사이트를 제작, 운영하는 과정 전부를 말한다.


SEO 과정을 시작하기 위해서는 Hexo 프로젝트에 몇가지 플러그인 설치가 필요하다.

플러그인 설치

hexo-auto-canonical

메타 태그 중 canonical 속성을 대표 URL이라 뜻하고 각 포스트마다 자동으로 표준 링크를 만들어 준다.

설치

npm-install --save hexo-auto-canonical

설정

설정은 내 블로그 테마 기준, theme 폴더 아래의 layout/common/head.ejs 파일에서 제일 하단에 구문을 추가한다.

1
2
<!--Canonical : 유사하거나 중복된 페이지의 표준 페이지 정의-->
<%- autoCanonical(config, page) %>

canonical

head.ejs 구문을 만지작하고 deploy 하니 head 태그 아래에 <link rel="canonical" href="https://msj0319.github.io/"> 라고 설정이 된 것을 확인할 수 있다. 메타 태그 (meta tag)는 해당 웹 페이지의 정보를 담은 태그로 <head> 태그 안에 있다고 한다. 이 메타 태그가 잘 들어가 있어야 검색엔진이 이 사이트를 잘 인식해서 수집이 잘된다고 한다.

참조 : https://futurecreator.github.io/2016/06/15/hexo-google-site-search-console-analytics/


웹 개발 쪽은 잘 몰랐는데 여러 ejs 파일들이 이런 식으로 각자 할일들이 있는 모양새인듯 하다. 시간나면 공부해 봐야겠다.

hexo-autofollow

해당 포스트에서 참고하고 있는 외부링크에 대해 nofollow 속성을 자동으로 추가하는 플러그인이다. 앞서 언급했듯이 검색엔진은 사람들이 서칭활동을 하는데에 있어 원하는 웹페이지를 되도록 많이 수집하는데 이런 크롤링 작업을 하는 로봇크롤러 또는 구글봇이라고 한다. 이런 로봇에게 어떤 페이지는 수집하지 말라고 얘기할 필요가 있기 때문에 이런 기능이 필요한 것이다.

설치

npm install hexo-autonofollow --save

설정 (theme/_config.yml)

1
2
3
4
5
nofollow:
enable: true
exclude:
- exclude_1.com #예외처리 할 사이트 등록
- exclude_2.com

hexo-generator-seo-friendly-sitemap

Sitemap 생성기, 사이트맵을 등록하면 크롤링 작업을 하는 들이 좀 더 효율적으로 크롤링 작업을 할 수 있게 도와주는 역할을 한다.

설치

npm-install hexo-generator-seo-friendly-sitemap --save

설정 (theme/_config.yml)

1
2
3
4
5
6
# 검색 엔진에서 크롤링 할 페이지들을 결정해주는 xml 파일 생성
sitemap:
path: sitemap.xml #블로그 주소/sitemap.xml
#여기까지만 쓴다. 아래는 옵션
tag: true #Defualt: true
category: true #Default: true

tag 속성 : sitemap에 tag 정보 포함 여부

category 속성 : sitemap에 마찬가지로 카테고리 포함 여부

sitemap (실제로 root 폴더 내부에 sitemap.xml 파일들이 생성된 것이 보인다.)


hexo-generator-feed

자동으로 Atom 1.0 또는 RSS2.0 피드 생성해주는 플러그인이다.

설치

npm install hexo-generator-feed --save

설정 (theme/_config.yml)

1
2
3
4
5
6
7
8
9
feed:
type: rss2 #atom / rss2
path: rss2.xml #(Defult: atom.xml/rss2.xml) - 네이버에선 atom 미지원으로 인해 rss2로 설정
limit: 20 #공개할 rss feed 수
# 기본적으로 여기 까지만 쓴다. 아래는 옵션
hub:
content:
content_limit: 140 #요약 글자 수
content_limit_delim: ''

root/_config.yml

1
2
# Path or URL to RSS atom.xml
rss: /rss2.xml #feed에서 등록한 rss 주소 입력

hexo-generator-robotstxt

설치

npm install hexo-generator-robotstxt --save

설정

1
2
3
4
robotstxt:
User-agent: "*"
Allow: /
Sitemap: https://msj0319.github.io/sitemap.xml

Sitemap 속성엔 미리 Sitemap 플러그인 설치 후 설정한 사이트맵의 주소를 넣는다. 그 뜻은 robots 생성 플러그인 설치를 위해선 사이트맵 플러그인 설치가 선행되어야 한다.


설정이 모두 끝난 후 Deploy를 하면 모든 검색엔진 최적화를 위한 플러그인 설치는 끝난다.

Author

MoonDoni

Posted on

2020-02-14

Updated on

2020-02-16

Licensed under

댓글