10070 次
4 に答える
4
より良いオプションは、任意の URL を index.html にリダイレクトすることです。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*$ index.html
これにより、どのページでも 404 応答が発生することはありません。
于 2015-06-21T18:42:55.113 に答える
1
Vagrantを使用して angularjs アプリケーションを実行していますNginx。そして、同様の問題に直面しています。任意の URL でブラウザをリロードすると、404 ページが表示されます。
メインの js ファイルで html5mode を有効にしました。html5Mode を有効にすると、その#文字は URL で使用されなくなります。この#シンボルは、サーバー側の構成を必要としないため便利です。がなければ#、URL は見栄えがよくなりますが、サーバー側の変更も必要になります。
変更する必要があるのは次のとおりです。
- フォルダー内のnginx 構成ファイル (
nginx.conf) を開き/etc/nginx/sites-enabledます (パスは、nginx のインストール ディレクトリによって異なります)。 - それを見つけ
try_files $uri $uri/ =404;て置き換えますtry_files $uri $uri/ /index.html; - nginx 構成ファイルを保存する
- nginxを再起動します
sudo service nginx restart
上記の変更を行った後、ページをリロードしようとしました。期待どおりに動作します。
于 2016-04-07T16:34:55.220 に答える