このWebサイトは、Next.jsで構築したSSG(Static Site Generation)をCloudflare Pagesにデプロイする構成で運用されています。この記事では、その構成の特徴や利点、注意点について解説します。
Next.jsのSSG機能を使って静的HTMLファイルを生成し、それらをCloudflare Pages上でホスティングすることで、高速かつコストを抑えたWebサイト運用が可能になります。
SSGとは、ビルド時にあらかじめHTMLファイルを生成しておく方式です。ユーザーのアクセス時にはHTMLがすでに用意されているため、表示が非常に高速です。
Cloudflare Pagesは、Jamstack向けの静的サイトホスティングサービスで、GitHubやGitLabとの連携によって簡単にデプロイを自動化できます。また、CloudflareのCDNネットワークにより、世界中に高速な配信が可能です。
Next.jsでビルド後に.next
以下の出力をout
フォルダに静的書き出しし、Cloudflare Pagesにアップロードします。
1npm run build
2npm run export
プロジェクトルートにあるpackage.json
には、次のようなスクリプトを記述しておくと便利です。
1{
2 "scripts": {
3 "build": "next build",
4 "export": "next export"
5 }
6}
7
Cloudflare Pagesの設定では、ビルドコマンドにnpm run build && npm run export
を、出力ディレクトリにout
を指定します。
このWebサイトも、同じ構成で運用されており、高速表示と運用のしやすさの恩恵を受けています。