Web開発 2025.12.20

Firebaseで静的サイトを
ホスティングする方法【初心者向け】

1. Firebase Hostingとは

Firebase Hostingは、Googleが提供する静的サイトのホスティングサービスです。 HTML、CSS、JavaScript、画像ファイルなどで構成されるWebサイトを、 簡単に世界中に公開できます。

Firebase Hostingの主な特徴は以下の通りです。

  • 無料で始められる:小規模なサイトなら無料枠で十分運用可能
  • 高速なCDN:世界中のエッジサーバーから配信されるため、どこからアクセスしても高速
  • SSL証明書が自動:HTTPSが自動で有効になり、セキュリティも安心
  • 独自ドメイン対応:自分のドメインを使ってサイトを公開可能
  • 簡単デプロイ:コマンド一つでサイトを更新できる

2. 事前準備

Firebase Hostingを使うには、以下の準備が必要です。

  • Googleアカウント
  • Node.js(バージョン14以上推奨)
  • 公開したいWebサイトのファイル(HTML、CSS、JavaScriptなど)

Node.jsのインストール確認

ターミナル(コマンドプロンプト)で以下のコマンドを実行して、 Node.jsがインストールされているか確認します。

node --version

バージョン番号が表示されればOKです。 インストールされていない場合は、 Node.js公式サイトからダウンロードしてインストールしてください。

3. Firebaseプロジェクトの作成

Step 1: Firebaseコンソールにアクセス

Firebaseコンソールにアクセスし、Googleアカウントでログインします。

Step 2: 新しいプロジェクトを作成

「プロジェクトを追加」をクリックし、プロジェクト名を入力します。 Google Analyticsの設定は、後からでも変更できるので、とりあえず有効にしておいて問題ありません。

Step 3: プロジェクト作成完了

しばらく待つと、プロジェクトが作成されます。 「続行」をクリックして、プロジェクトのダッシュボードに移動します。

4. Firebase CLIのセットアップ

Firebase CLIは、コマンドラインからFirebaseを操作するためのツールです。 以下のコマンドでインストールします。

npm install -g firebase-tools

インストールが完了したら、Firebaseにログインします。

firebase login

ブラウザが開くので、Googleアカウントでログインして権限を許可します。

プロジェクトの初期化

サイトのファイルがあるディレクトリに移動して、Firebaseの初期化を行います。

cd /path/to/your/project
firebase init

対話形式で設定を進めます。

  1. 機能の選択:「Hosting: Configure files for Firebase Hosting...」を選択(スペースキーで選択、Enterで確定)
  2. プロジェクトの選択:「Use an existing project」を選択し、先ほど作成したプロジェクトを選ぶ
  3. 公開ディレクトリ:公開するファイルがあるディレクトリ名を入力(通常は「public」)
  4. シングルページアプリ:通常のサイトなら「No」を選択
  5. GitHub連携:自動デプロイを設定する場合は「Yes」、とりあえず「No」でOK

5. サイトをデプロイする

設定が完了したら、以下のコマンドでサイトをデプロイします。

firebase deploy

デプロイが完了すると、以下のようなURLが表示されます。

Hosting URL: https://your-project-id.web.app

このURLにアクセスすると、公開されたサイトを確認できます。 おめでとうございます!これでサイトが世界中に公開されました。

6. 独自ドメインの設定

独自ドメインを使いたい場合は、Firebaseコンソールから設定できます。

Step 1: Hostingの設定を開く

Firebaseコンソールで、左側メニューから「Hosting」を選択します。

Step 2: カスタムドメインを追加

「カスタムドメインを追加」ボタンをクリックし、使用するドメインを入力します。

Step 3: DNSレコードを設定

画面に表示されるAレコードまたはTXTレコードを、 ドメインを管理しているサービス(お名前.com、Google Domainsなど)のDNS設定に追加します。

Step 4: SSL証明書の発行

DNSの設定が反映されると、自動的にSSL証明書が発行されます。 反映には数時間〜24時間程度かかることがあります。

7. 便利なTips

プレビューチャンネルを使う

本番環境に影響を与えずに変更を確認したい場合、プレビューチャンネルが便利です。

firebase hosting:channel:deploy preview

一時的なURLが発行され、変更を確認できます。確認後に本番デプロイすれば安心です。

キャッシュの設定

firebase.jsonでキャッシュの設定をカスタマイズできます。 静的ファイルを長期キャッシュすることで、サイトの表示速度が向上します。

{
      "hosting": {
        "public": "public",
        "ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
        "headers": [
          {
            "source": "**/*.@(jpg|jpeg|gif|png|svg|webp|ico)",
            "headers": [
              {
                "key": "Cache-Control",
                "value": "max-age=31536000"
              }
            ]
          },
          {
            "source": "**/*.@(css|js)",
            "headers": [
              {
                "key": "Cache-Control",
                "value": "max-age=31536000"
              }
            ]
          }
        ]
      }
    }

リダイレクトの設定

URLの変更やwwwありなしの統一など、リダイレクトも設定できます。

{
      "hosting": {
        "public": "public",
        "redirects": [
          {
            "source": "/old-page",
            "destination": "/new-page",
            "type": 301
          }
        ]
      }
    }

404ページのカスタマイズ

存在しないページにアクセスされた時に表示される404ページは、 publicディレクトリに404.htmlを配置するだけでカスタマイズできます。

Firebase Hostingは、個人のポートフォリオサイトから企業のランディングページまで、 幅広い用途で活用できます。無料で始められるので、ぜひ試してみてください。

Seaside Lab

Seaside Lab

このサイトもFirebase Hostingで運用しています。

ブログ一覧へ戻る