アプリでHTML5モードを有効にしたい。ここに示すように、私は構成のために次のコードを入れました:
return app.config(['$routeProvider','$locationProvider', function($routeProvider,$locationProvider) {
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix = '!';
$routeProvider.when('/', {
templateUrl: '/views/index.html',
controller: 'indexCtrl'
});
$routeProvider.when('/about',{
templateUrl: '/views/about.html',
controller: 'AboutCtrl'
});
ご覧のとおり、私はを使用し、$locationProvider.html5mode
ですべてのリンクを変更してng-href
を除外しました/#/
。
問題
現時点でlocalhost:9000/
は、インデックスページに移動して確認し、などの他のページに移動できますlocalhost:9000/about
。
しかし、localhost:9000/about
ページを更新すると問題が発生します。次の出力が表示されます。Cannot GET /about
ネットワーク呼び出しを見ると:
Request URL:localhost:9000/about
Request Method:GET
一方、最初に移動しlocalhost:9000/
、次に移動するボタンをクリックすると、次のようになります/about
。
Request URL:http://localhost:9000/views/about.html
これはページを完全にレンダリングします。
更新時に角度を有効にして正しいページを取得するにはどうすればよいですか?