在 AngularJS 中启用 html5Mode 后抛出不能报错

Throwing cannot get error after enabling html5Mode in AngularJS

我在我的应用程序中为 routes/states 使用 UI-Router 并且 URLs 有“#”所以要删除它,我使用 $locationProvider 就像 -

function configState($stateProvider, $urlRouterProvider, $locationProvider) {

    $locationProvider.html5Mode(true);

在模块依赖中添加了 ngRoute 并在我的 index.html.

中添加了 <base href="/" >

问题 -

如果我像在同一个选项卡中一样将它用作普通应用程序并导航到其他状态,它会工作 但是 每当我将 URL 粘贴到另一个选项卡中并且hit enter 它的投掷 Cannot GET /app_views/contacts URL 就像 - http://localhost:9000/app_views/contacts

虽然在 URL 中使用哈希,但它可以双向工作。

您可能会收到此错误,因为您的服务器配置不正确。换句话说,当您手动输入 /app_views/contacts 时,它将向服务器请求该页面。为了使其正常工作,您需要配置您的服务器以将所有流量路由到您的 index.html 页面,以便 Angular 正确接管并显示正确的视图。

这里是相关的postReloading the page gives wrong GET request with AngularJS HTML5 mode