Я работаю над приложением, которое должно использовать режим HTML 5. Из-за того, что я переношу существующий сайт на использование AngularJS 1.2, я не могу иметь теги "#" в своем URL-адресе. В настоящее время у меня есть следующее:
angular.module('myApp', ['ngRoute']).
config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$locationProvider.html5Mode(true);
$routeProvider
.when("/home", {templateUrl:'home.html', controller:'homeController'})
// other routes are defined here..
.otherwise({redirectTo: '/home'});
}]);
К сожалению, когда я посещаю 'http://myServer/home
', мое приложение не работает, когда включен режим html 5. Я получаю 404. Однако, когда я навещаю http://myServer/
, он работает. Его как глубокая привязка не работает, когда у меня включен режим html5. Если я прокомментирую строку, которая говорит "$ locationProvider.html5mode (true);", функции сайта. Однако еще раз, я не могу иметь хэш-теги в своем URL-адресе из-за того, что я переношу существующий сайт.
Я не понимаю, как работает html5mode (true)? Или я делаю что-то неправильно?
Спасибо