이번에 적용해 보려고 하는 것은 검색엔진 최적화(SEO)입니다.
다행히 Hexo에는 SEO관련 플러그인들이 많이 있었다.
그 중에 많이 쓰이고 해당 블로그에 적용한 플러그인들을 소개합니다.
SEO
SEO란?
영어로 Search Engine Optimization 의 약자이며, 검색엔진 최적화 라는 의미를 가지고 있습니다.
검색엔진에 맞게 사이트를 제작 및 운영하는 과정 전부를 뜻합니다.
플러그인 설치 및 설정
- hexo-auto-canonical
메타 태그 중 canonical 속성은 대표 URL을 뜻합니다.
각 포스트마다 자동으로 표준 링크를 만들어 줍니다.
설치
npm install --save hexo-auto-canonical
설정
HEAD에 위치 하도록 아래 내용을 추가해줍니다.
ejs 의 경우
<%- autoCanonical(config, page) %>
jade 의 경우
| !{ autoCanonical(config, page) }
- hexo-autonofollow
해당 포스트에서 참고하고 있는 외부링크에 nofollw 속성을 자동으로 추가해줍니다.
설치
npm install hexo-autonofollow --save
설정
_config.yml 파일에 아래 내용을 추가합니다.
nofollow:
enable: true
exclude:
- exclude_1.com
- exclude_2.com
- hexo-generator-seo-friendly-sitemap
사이트 맵을 제출하면 크롤러가 효율적으로 크롤링을 할 수 있습니다.
자동으로 sitemap.xml을 생성해 줍니다.
설치
npm install hexo-generator-seo-friendly-sitemap --save
설정
_config.yml 파일에 아래 내용을 추가합니다.
sitemap:
path: sitemap.xml
tag: false
category: false
path값을 지정한 root폴더에 sitemap.xml이 생성됩니다.
<사이트주소>/sitemap.xml 경로에서 확인 할 수 있습니다.
- tag : sitemap에 tag 포함 여부를 결정합니다.
- category : sitemap에 category 포함 여부를 결정합니다.
- hexo-generator-feed
자동으로 Atom 1.0또는 RSS2.0 피드를 생성해 줍니다.
설치
npm install hexo-generator-feed --save
설정
_config.yml 파일에 아래 내용을 추가합니다.
feed:
type: rss2
path: rss2.xml
limit: 20
- 네이버에서 Atom을 지원하지 않기 때문에 RSS2로 설정해 줍니다.
- type : 피드의 종류 (atom/rss2)
- path : 피드가 생성될 경로 (Default: atom.xml/rss2.xml)
- limit : 최신 포스트의 개수 설정 (0 또는 false 입력 시 모든 포스트)
- hexo-generator-robotstxt
자동으로 robots.txt 파일을 생성해 줍니다.
설치
npm install hexo-generator-robotstxt --save
설정
_config.yml 파일에 아래 내용을 추가합니다.
robotstxt:
useragent: "*"
allow:
- /
sitemap: https://[username].github.io/sitemap.xml
Deploy를 해주신 후에
각 검색엔진에서 SEO설정을 해줍니다.