Ui-router retourne: "Impossible GET / page"

J'utilise ui-router et j'ai un état de profile qui se présente comme suit:

 .state('profile', { url: "/profile", templateUrl: "views/profile.html", controller: 'ProfileCtrl', resolve: { currentUser: function(gamAuth){ return gamAuth.checkCurrentUser(config.userRol.user) } } 

Lorsque j'essaie de recharger / actualiser la page, je reçois le message suivant:

 Cannot GET /profile 

Le problème ne se produit pas lorsque je recharge ma «page de destination» à l' http://localhost:9000/ , qui a l'état suivant dans $stateProvider :

 .state('home', { url: "/", [...] }) 

J'utilise: $locationProvider.html5Mode(true);

J'ai essayé de fournir une URL absolue comme suggéré dans l'arbre de décision ici

J'ai également essayé un certain nombre de suggestions trouvées en ligne, le plus populaire étant quelque chose dans ce sens (le placer dans la section app.run() ):

 $state.transitionTo($state.current, $stateParams, { reload: true, inherit: false, notify: true }); 

Toutes les approches ont été testées avec et sans la <base href="/"> étant présente dans <head> de mon index.html . Merci pour votre temps.

Vous devez activer le mode html5 comme vrai si vous souhaitez utiliser votre URL sans le préfixe '#'.

Aussi, vous devez ajouter votre modRewrtie dans comme mentionné ici

Condition préalable:

 npm install --save-dev connect-modrewrite 

Lorsque vous avez activé html5Mode, le caractère # ne sera plus utilisé dans vos URL. Le symbole # est utile car il ne nécessite aucune configuration côté serveur. Sans #, l'URL est beaucoup plus agréable, mais elle nécessite également des réécritures côté serveur.

Pour plus de détails sur les réécritures à configurer:

https://github.com/angular-ui/ui-router/wiki/Frequently-Asked-Questions#how-to-configure-your-server-to-work-with-html5mode