FirebaseでSPAやりたいときの設定
SPA をおいてみたけど、 index.htmlからしか遷移できない!ってときに。
しばらく転送されてなかった
React(Gatsby)でサイトリニューアルしてからというもの、どんどん落ちる検索ランキング。
なんでかなーと思ったら、/index.html 以外、URLでの直接リンクで表示できないようになっていた。
原因は Firebase の設定
SPA の場合、ブラウザのアドレス欄の表示が変わってもすべて /index.html で表示されています。
そのまま /blog/post/react/react-on-firebase/ を表示させようとしても、そこには html ファイルがないため何も表示できません。
以前は nuxt.js でジェネレートしていたので大丈夫だったんですね。
この問題は、Firebase 側の設定ですべての HTML リクエストは /index.html を返してもらう必要があります。
リダイレクトではなく、フォワードのイメージですね。
設定は Firebase.json