Я хочу включить режим 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
Который прекрасно отображает страницу.
Как я могу включить Angular для получения правильной страницы при обновлении?