我有以下问题。我正在使用AngularJS和angular-route。当我打开html5Mode
时$locationProvider.html5Mode(true);
对于漂亮的URL,如果我刷新页面,我有“找不到页面”错误。
这是我的HTML代码:
<body ng-app="app">
<div class="container" ng-controller="MainCtrl">
<div class="page-header">
<h1>Page title <small>© 2014</small></h1>
</div>
<a href="/">HOME</a>
<a href="/contact">CONTACT</a>
<div ng-view></div>
</div>
</body>
和JS代码:
(function() {
angular.module("app", ["ngRoute"])
.config(function($routeProvider,$locationProvider){
$routeProvider
.when("/",{
template: "Home!"
})
.when("/contact",{
template: "Contact!"
});
$locationProvider.html5Mode(true);
})
.controller("MainCtrl", function() {
});
})();
任何想法如何解决?
答案 0 :(得分:0)
可能你需要设置重写规则
您的服务器上没有/contacts
,它应映射到您的处理程序。
例如,对于Apache,它看起来像(.htaccess
文件):
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html