2016-06-22 13 views
0

htmlプロバイダで角度jsの状態を変更しようとしました。しかし、ページをリフレッシュしようとすると、404のエラーが表示されます。何が問題ですか。 ?角度jsページの更新が機能しない

私の状態プロバイダは

$stateProvider 
    .state('home', { 
     url: '/Edu', 
     views: { 
      '[email protected]': { 
       templateUrl: 'dashboard.html', 
       controller: 'dashCtrl' 
      } 
     }, 
     params: {'registerData' : ''} 
    }) 
    .state('dash_home', { 
     url: '/dash_home', 
     views: { 
      '[email protected]': { 
       templateUrl: 'dash_home.html', 
       controller: 'dashCtrl' 
       } 
     }, 
     params: {'registerData' : ''} 
    }) 
    .state('login', { 
     url: '/login', 
     views: { 
      '[email protected]': { 
       templateUrl: 'login.html', 
       controller: 'dashCtrl' 
      } 
     }, 
     params: {'registerData' : ''} 
    }); 

HTML5 confには、

app.config(function($locationProvider) { 
    $locationProvider.html5Mode(false); 
}); 

であり、またHTMLページに

<base href="/"> 

を入れています。しかしそれは仕事をしなかった。

EDIT

server { 
    listen 80 ; 
    listen [::]:80 ; 
    root /var/www/Edu; 

location/{ 
     # First attempt to serve request as file, then 
     # as directory, then fall back to displaying a 404. 
     root /var/www/Edu; 
     try_files $uri /index.html; 
    } 
} 
+0

ブラウザに入れたURLは何ですか? –

+0

[ページをリロードすると、AngularJS HTML5モードで間違ったGETリクエストが発生する可能性があります](http://stackoverflow.com/questions/16569841/reloading-the-page-gives-wrong-get-request-with-angularjs-html5- mode) – Phil

+0

url:Log In jicks

答えて

0

URLが間違っているか、何の状態が(ちょうど設定関数に$ urlRouterProviderを注入)が存在しない場合、デフォルトのリダイレクトを使用することができます。

はこのように、あなたの「ホーム」ページにリダイレクトするように「/」の状態を追加します。

$urlRouterProvider.otherwise('home'); 

希望、これは幸運を支援します。このよう

.state('/', { 
     url: '/Edu', 
     views: { 
      '[email protected]': { 
       templateUrl: 'dashboard.html', 
       controller: 'dashCtrl' 
      } 
     }, 
     params: {'registerData' : ''} 
    }) 

は、デフォルトのリダイレクトを追加します。

関連する問題