# Vue Routerでリロード/直リンクでの404を回避する

# 症状

個人的なツールを作成したときに、Vue Routerでhistory modeを有効でサイトをNetlifyリリースしたら、リロードや直リンを貼った場合にstatus 404を返される。

  • serve(develop環境)で実行した場合は発生しない
  • buildでできたページにアクセスしたときのみに発生

# 対策方法

ちょっとだけ調べるとbripkens/connect-history-api-fallbackを入れろやら出てくるが、そんな事をしなくて良い。
プロジェクト直下にあるpublicディレクトリに_redirectsファイルを作成して、下の一行を追加するだけで良い。

/*    /index.html   200

これだけで直リンやリロードによるstatus404を回避できる。
Netlifyでデプロイしたサイトで確認済み。 serveでうまくいっていたのにいざNetlifyにデプロイしたら404吐いてびっくりした。

Last Updated: 11/22/2019, 2:09:14 AM