※記事内に商品プロモーションを含むことがあります。
はじめに
静的サイトをブログ村に登録する場合、Netlify以外のホスティングサービスを使用すると最新記事を取得してくれない可能性がある。
このサイト (Helve Tech Blog) をにほんブログ村 (https://blogmura.com) に登録したが、記事の情報が取得されず、「投稿記事なし」の状態になっていた。
ブログ村のお問合せフォームから問い合わせたが、2週間以上経っても返信がないため、こちらで原因を調査した。
このブログは以下の条件で公開している(2021/6/27現在)。
- 静的サイトジェネレータHugoのZzoテーマをカスタマイズして使用
- ローカル環境 (Windows 10) でビルドしている
- ホスティングサービスはGitHub Pages
また、ZzoテーマではRSSは出力されており、人気ブログランキング (https://blog.with2.net) ではきちんと取得されている。
そのため、ブログ村で記事を取得できない原因として、ブログ村が以下に対応していないことが考えられた。
- Windows 10で出力したことによる文字コードの違い
- RSSの形式
- ホスティングサービス
検証内容
そこで、以下の静的サイトホスティングサービスでブログを公開し、記事を取得できるか確認してみた。
- Netlify
- GitHub Pages
- Vercel
- Cloudflare Pages
各サービスで条件は以下の通り揃えた。
- Hugoでビルドする前のソースコードをGitHubにアップロード
- 各ホスティングサービス上でHugo v0.79.0/extendedを使って自動ビルド
- ドメインはサービスが提供するデフォルトとする
また、各サービスによってドメインが異なるため、config.toml
のbaseURL
の値はサービスごとに変更している。
検証結果
各サービスで作成したブログをそれぞれブログ村に登録したところ、Netlifyのみ記事が取得された。
他のサービスでもビルド後のソースコードは基本的に同じはずなので、記事が取得されなかった原因は不明である(各サービスの公開用サーバが、ブログ村のRSS取得を禁止しているとは思えない…)。
まとめ
原因は不明であるが、静的サイトをブログ村に登録したいのであれば、Netlifyを使用することをオススメする。
ただし、Netlifyの無料プランでは公開用サーバがシンガポールにあるようなので、日本国内からのアクセスがやや遅い。
筆者の自宅からNetlifyまでpingでRTTを測定したところ、100ms程度だった(GitHub Pages, Vercel, Cloudflare Pagesはいずれも50ms程度)。
この程度の差にはあまり神経質にならなくても良いと思うが、個人的にはNetlifyで割と遅く感じてしまったので、このブログでは今後もGitHub Pagesを継続したい。
今後の各サービスの仕様変更により、この記事と同じ結果になるとは限らない。
もしくは、今回検証していないホスティングサービス (Firebase Hosting, GitLab Pages, etc.) では最新記事を取得できる可能性があるので、検証された方はコメントいただけると助かります。
参考
静的サイトホスティングサービスの速度比較に関する参考記事