home wiki.fukuchiharuki.me
Menu

キーワード

  • Angular2
  • routing
  • 404 not found

現象

Angular2でルーティングしたときにURLが切り替わる。このURLをリロードすると404エラーになる。ただし、開発時ng serverなどで動かしているときは問題がない。

原因

ないものはないから。なかったときにindex.htmlをレスポンスするようにサーバー設定する必要がある。ng serverなどで動くサーバーはそれをやってくれているのだと思う。

対策

Directory "/Applications/XAMPP/xamppfiles/htdocs"> # ここはいろいろ

   # rewrite to index.html for Angular2
   Options Indexes FollowSymLinks
   RewriteEngine On
   RewriteBase /
   RewriteRule ^index\.html$ - [L]
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule . /index.html [L]

/Directory>

備考

開発環境がいろいろやってくれている部分が見えないとハマったときに困る。。

参考