ブログの構成についてメモ

ブログの構成についてメモ

目次


手帳をテーマにしておいて、いきなり本ブログのシステムアーキテクチャについて、メモしておきます。

 

Astroで構築

本サイトは、Astroという静的サイトジェネレータを利用して構築されています。静的サイトジェネレーターを利用してブログ構築するのは初めてで、結構楽しいです。

通常、ブログをはじめるというと、WordPressを用いて構成したり、ちょっとブログとは違いますが、noteを利用したりするかと思います。

これらは、動的にサイトを返却するもの(ユーザーからリクエストがあったら、その場でサーバーがページを組み立てて返す)で、キャッシングやサーバーレスポンスの高速化などで工夫することで高速化は出来ますが、静的なサイトにしてしまえば、そもそもレスポンス速度は普通にやれば速いので、静的サイトジェネレータによるサイト構成をずっとやってみたかったです。やってみて、「おぉー、はやい」と言いたかったです(それで満足する)。

Github Actionsでmainブランチにマージしたら、自動でAWS S3にデプロイされるようにしており、記事の作成とデプロイは、CLIか、VSCodeのみで完結するように設定したので便利です。

初期設定はちょっとめんどかった

めんどくさかったのは、初期のAWSのS3 + CloudFront構成で、ちゃんとやったのは初めてだったので、なかなかめんどかったです。

  • S3だけの静的ウェブホスティングでは、https通信できないので、CloudFrontを組み合わせる
  • CloudFrontでSSL認証するための認証情報は、ap-northeast-1じゃだめで、us-esst-1じゃなきゃだめ
  • CloudFrontのデフォルトオリジンパスは、サブディレクトリに使えない
    • つまり、 hoge.jp/としたら、hoge.jp/index.htmlとしてくれるが、
    • hoge.jp/about/としたら、hoge.jp/about/index.htmlとしてくれない
    • これが、Astroなどのビルド設定と、すでに構築したソースとの相性などが悪かった
  • サブディレクトリで、デフォルトオリジンパスを設定するには、Labmda@Edgeしかない

… と、めんどくさいです(まだあるのですが書くのもめんどくさくなってきたので、この辺で)

まぁ、一度設定してしまえば良いので(たぶん)、もう設定したので良いのですが…

 

・・・次からはちゃんと手帳に関するエントリ書きたいと思います…

 

(アイキャッチ画像は、Pixabayより)