新しくhexoアプリケーションを作成する

背景

GoogleSearchConsoleを見ていると、ビジネス書の記事でインデックスされなくなっていたり、ビジネス書の記事でほとんど検索上位に表示されないということがわかりました。

たまたま読んだ沈黙のWebマーケティングによると、ジャンル・カテゴリが違う内容はサブドメインを切った方が良いという風に書かれていました。(この本は見た目はアレですが、片手間でしかSearchConsoleを使ったことがないぼくにとってはとても勉強になりました)

なので、今回新しくサブドメインを作成し、ビジネス書の記事はそちらに集約しようと思います。

hexoアプリケーションの作成

このブログはhexoでできていますが、作り方を忘れてしまったので確認しながら記載していきます。

nodejsのインストール

nodejsは現在LTS最新版が14.15.1です。これをインストールします。

1
2
3
4
5
6
7
8
$ nodenv install 14.15.1
node-build: definition not found: 14.15.1

See all available versions with `nodenv install --list'.

If the version you need is missing, try upgrading node-build:

git -C /Users/user/.anyenv/envs/nodenv/plugins/node-build pull

nodenvを更新します。anyenvを利用しているので、 anyenv updateします。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$ anyenv update
Updating 'anyenv'...
| From https://github.com/riywo/anyenv
| e963a69..67d402f master -> origin/master
| * [new tag] v1.1.2 -> v1.1.2
Updating 'anyenv/anyenv-git'...
Updating 'anyenv/anyenv-update'...
Updating 'nodenv'...
Updating 'nodenv/node-build'...
| From https://github.com/nodenv/node-build
| ddc0daa4..bb925ce4 master -> origin/master
| * [new tag] v4.9.19 -> v4.9.19
| * [new tag] v4.9.16 -> v4.9.16
| * [new tag] v4.9.17 -> v4.9.17
| * [new tag] v4.9.18 -> v4.9.18
Updating 'nodenv/nodenv-vars'...
Updating 'pyenv'...
| From https://github.com/pyenv/pyenv
| 806b30d6..943015eb master -> origin/master
Skipping 'pyenv/python-build'; not git repo
Updating 'rbenv'...
| From https://github.com/rbenv/rbenv
| c879cb0..60c9339 master -> origin/master
Updating 'rbenv/ruby-build'...
| From https://github.com/rbenv/ruby-build
| 1642176..f85906e master -> origin/master
| * [new tag] v20201118 -> v20201118
| * [new tag] v20200722 -> v20200722
| * [new tag] v20200727 -> v20200727
| * [new tag] v20200819 -> v20200819
| * [new tag] v20200926 -> v20200926
| * [new tag] v20201005 -> v20201005
| * [new tag] v20201117 -> v20201117
Updating 'anyenv manifest directory'...

updateが終わったのでインストールします。

1
2
3
4
5
$ nodenv install 14.15.1
Downloading node-v14.15.1-darwin-x64.tar.gz...
-> https://nodejs.org/dist/v14.15.1/node-v14.15.1-darwin-x64.tar.gz
Installing node-v14.15.1-darwin-x64...
Installed node-v14.15.1-darwin-x64 to /Users/user/.anyenv/envs/nodenv/versions/14.15.1

インストールが終わったので、このバージョンを利用するようにします。

1
2
3
4
5
$ nodenv local 14.15.1
$ ls -a
. .. .node-version
$ cat .node-version
14.15.1

hexoのインストール

あとは9こちらに書かれている通り進めていきます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$ npm install -g hexo-cli
/Users/user/.anyenv/envs/nodenv/versions/14.15.1/bin/hexo -> /Users/user/.anyenv/envs/nodenv/versions/14.15.1/lib/node_modules/hexo-cli/bin/hexo
+ hexo-cli@4.2.0
added 64 packages from 338 contributors in 5.057s
$ npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
<省略>
$ npm install hexo
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN business-book-reviews@1.0.0 No description

+ hexo@5.2.0
added 91 packages from 371 contributors and audited 91 packages in 4.774s

11 packages are looking for funding
run `npm fund` for details

found 0 vulnerabilities

バージョン5.2.0がインストールされました。

インストール完了後は

1
$ npx hexo <command>

でコマンドが実行できます。

hexoのセットアップ

こちらを参考に進めていきます。

1
2
3
4
5
6
7
8
$ npx hexo init business_blog
INFO Cloning hexo-starter https://github.com/hexojs/hexo-starter.git
INFO Install dependencies
warning hexo-renderer-stylus > stylus > css-parse > css > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
warning hexo-renderer-stylus > stylus > css-parse > css > source-map-resolve > urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
warning hexo-renderer-stylus > stylus > css-parse > css > source-map-resolve > resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
warning Your current version of Yarn is out of date. The latest version is "1.22.5", while you're on "1.22.4".
INFO Start blogging with Hexo!

これだけでセットアップは完了です。作成されたディレクトリに移動すると見慣れたファイルがインストールされています。

1
2
3
$ cd business_blog/
$ ls
_config.yml node_modules package.json scaffolds source themes yarn.lock

ここでnpm installします。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ npm install
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN rm not removing /Users/user/github/business-book-reviews/business_blog/node_modules/.bin/stylus as it wasn't installed by /Users/user/github/business-book-reviews/business_blog/node_modules/stylus

> ejs@2.7.4 postinstall /Users/user/github/business-book-reviews/business_blog/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)

npm notice created a lockfile as package-lock.json. You should commit this file.
added 25 packages from 48 contributors, removed 11 packages, updated 166 packages and audited 191 packages in 10.617s

14 packages are looking for funding
run `npm fund` for details

found 0 vulnerabilities

これで必要なパッケージはインストールできました。

まとめと次回予告

このブログを開始したのは1年半前でした(時が経つのは早いものです。時間は大事にしたいですね)。そのときのhexoのバージョンは3.9でした。今回は5.2を新しくインストールするにあたって3.9のもメンテナンスしたいと思います。

次回は、セットアップしたhexoのconfig周りの設定と、nginxのバーチャルホストの設定をしていきたいと思います。