从我的理解并不$locationProvider.html5Mode(true); 从您的网址删除哈希? 虽然它确实对我来说只有主页似乎当你刷新页面,没问题。 这不就是redirectTo:应该处理?
var rustyApp = angular.module('rustyApp', ['ngRoute','viewController',
'mm.foundation','angular-flexslider','ui.router'],
function($routeProvider, $locationProvider) {
$routeProvider.when('/', {
templateUrl: '/partials/home.html',
controller: 'HomeController'
});
// When you put /home, it also automatically handles /home/ as well
$routeProvider.when('/work', {
templateUrl: '/partials/work.html',
controller: 'WorkController'
});
$routeProvider.when('/contact', {
templateUrl: '/partials/contact.html',
controller: 'ContactController'
});
$routeProvider.otherwise({
redirectTo: '/'
});
$locationProvider.html5Mode(true).hashPrefix('!');
});
这是我的HTML:
这是头:
这是naviagation ...
UPDATE
我在app.js文件改变了这一点。
$locationProvider.html5Mode(true).hashPrefix('!'); //changed this
至
$locationProvider.html5Mode(true);
并加入这一个.htaccess文件。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*) /index.html [NC,L]
然而,这似乎当我运行通过Apache服务器的工作。 我想我的问题是它吞掉产卵没有配置为处理该请求的静态服务器。 我相信有一些附加给gulp-open等..