4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Firebase】デプロイ時に「Firebase Hosting Setup Complete」の画面が出てきてしまう

Posted at

はじめに

課題のアプリを作成してFirebaseへデプロイを行った際に、コマンド上ではデプロイが成功していたものの実際のURLでは以下のような画面が出現しました。

Welcome.png

この画面が出てくる現象と原因についての備忘録記事です。

考えられる原因

firebase initでの初期化時にビルド先としてdistが登録されていない

firebaseを使う際には初回にfirebase initによる初期化処理が必要になります。その中の質問文で以下のようなものが出てきます。

What do you want to use as your public directory? 

この質問はfirebaseでのデプロイとして使用したいディレクトリを聞かれています。
事前にnpm run buildを行っていた場合はdistのフォルダが作成されており、そのディレクトリをデプロイ対象とすることでデプロイを行いたいことになります。

ですが、上記の質問でdist以外のものを登録していると正しく反応できずにFirebase Hosting Setup Completeの画面が出てしまいます。

②既存のdistファイルを上書きしてしまっていた

仮にdistにindex.htmlが入っている状態でfirebase initを行った場合、下記の質問が出てくることがあります。

File dist\index.html already exists. Overwrite?

この質問は「すでにindex.htmlが存在します。上書きしますか?」と言う質問なので、Yesを選択するとFirebase Hosting Setup Completeが入ったHTMLに上書きされてしまいます。

対策

①事前にnpm run buildをしてdistフォルダを作成する

firebaseでのデプロイ時にWhat do you want to use as your public directory?distを入力するにはあらかじめdistフォルダを作成する必要があります。
buildを行ってdistフォルダを作成しておきましょう。

②jsonの記述をdistに対応するように修正する

今回のfirebaseの処理を行うためのjsonファイルとしてfirebase.jsonがありました。
このファイルのhostingpublicdistになっていなかったのでdistに変更しました。

{
  "hosting": {
    "public": "dist",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

③どうしても直らない場合は再度firebase initする

ここまでの過程を対応しても直らない場合は再度firebaseを初期化すると直る場合があります。
一度firebase initし、設定を再入力してみましょう。

参考資料

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?