我想擺脫我的Hashbangs網站,但我似乎無法得到它很正確。例如,如果我着陸在home page上,然後單擊「CSS」菜單並選擇「摺紙元素」菜單選項,我會在導向到GitHub 404頁面之前簡要查看頁面加載情況。AngularJS,HTML5模式路由不工作
如果我把直接在網址(http://eat-sleep-code.com/css/origami),我得到直接發送到GitHub的404
我缺少什麼,或者這是不可能在GitHub的網頁託管AngularJS網站?
下面是我的app.js
var app = angular.module('eatsleepcode', ['ngRoute', 'ngSanitize']);
/* Routing */
app.config(['$routeProvider', '$locationProvider',
function($routeProvider, $locationProvider) {
$routeProvider.
when('/', {templateUrl: 'views/blog.html', controller: 'BlogController'}).
when('/blog', {templateUrl: 'views/blog.html', controller: 'BlogController'}).
when('/blog/:postID', {templateUrl: 'views/blog.html', controller: 'BlogController'}).
when('/contact', {templateUrl: 'views/contact.html', controller: 'DefaultController'}).
when('/privacy', {templateUrl: 'views/privacy.html', controller: 'DefaultController'}).
when('/resources', {templateUrl: 'views/resources.html', controller: 'DefaultController'}).
when('/terms', {templateUrl: 'views/terms.html', controller: 'DefaultController'}).
when('/css/origami', {templateUrl: 'views/css/origami.html', controller: 'DefaultController'}).
otherwise({
redirectTo: '/404'
});
$locationProvider.html5Mode(true);
}]);
/* Controllers */
app.controller('DefaultController', function($scope) {});
如果您只是請求http://.../css/origami,服務器不會讀取您的javascript。服務器不知道如何用你的js定義來路由它。這是##(http://.../#/css/origami)的目的;它打破了網址,所以它加載了JavaScript的初始頁面,然後加載正確的路線。 – kingdamian42 2014-11-25 14:48:41
相關http://stackoverflow.com/questions/19211576/enabling-html-5-mode-in-angularjs-1-2 – kingdamian42 2014-11-25 14:55:20