繁体   English   中英

当我打开html5Mode时刷新不起作用

[英]When I turn on html5Mode refresh doesn't work

我有以下问题。 我正在使用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() {
    });
})();

任何想法如何解决?

可能您必须设置重写规则。
您的服务器上没有/contacts ,它应该映射到您的处理程序。

例如,对于Apache,它看起来像( .htaccess文件):

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM