AstroをCloudflare Pagesにデプロイするときのビルド設定
Astroの静的ブログをCloudflare Pagesに載せる場合、最初に迷うのがビルド設定です。
基本はシンプルで、npm run build して dist を公開します。
Astro側の設定
静的サイトとして出すなら、output: 'static' でよいです。
import { defineConfig } from 'astro/config';
export default defineConfig({
site: 'https://example.com',
output: 'static',
});
Astroのデフォルトも静的出力ですが、明示しておくと意図が分かりやすくなります。
https://docs.astro.build/en/reference/configuration-reference/#output
Cloudflare Pages側
Cloudflare Pagesの設定は、だいたいこの形です。
Build command: npm run build
Build output directory: dist
Root directory: 空欄
リポジトリ直下にAstroプロジェクトがあるなら、Root directoryは空欄でよいです。
サブディレクトリにAstroを置いている場合だけ、そのディレクトリを指定します。
環境変数
外部APIや秘密情報を使わない静的ブログなら、環境変数は必須ではありません。
ただし、ビルド時にAPIキーやCMSのURLを使うならCloudflare Pages側に設定します。
Astroでは import.meta.env で環境変数を扱えます。
https://docs.astro.build/en/guides/environment-variables/
sitemapと独自ドメイン
独自ドメインで公開する場合、Astroの site には最終的なURLを入れます。
export default defineConfig({
site: 'https://example.com',
});
@astrojs/sitemap を使っている場合、ここがsitemapのURLにも関係します。
SEOまわりは AstroブログでcanonicalとsitemapとOGPを最初に設定する に分けています。
まとめ
AstroをCloudflare Pagesへ出す設定は、まずこの形です。
- build command は
npm run build - output directory は
dist - root directory は通常空欄
- 静的ブログなら環境変数は必須ではない
siteは最終的な独自ドメインにする
WordPressから静的サイトへ移す場合でも、最初はこの最小構成で十分です。
関連記事
- AstroブログでcanonicalとsitemapとOGPを最初に設定する
- Astro + Markdownブログで最初に設定しておくべきこと
- GitHub PagesとCloudflare Pagesはどちらを選ぶべきか
- Cloudflare PagesへWordPressのトップドメインを切り替えるときに見ること


