【问题标题】:html5Mode with base tag does not work on refresh带有基本标记的 html5Mode 在刷新时不起作用
【发布时间】:2014-11-19 11:28:43
【问题描述】:

AngularJS - html5Mode - Cannot GET /login

所以我看过这篇文章,我的问题非常相似。我已经使用基本标签来让我的相对 url 工作。我有 $locationProvider.html5Mode(true);在我的应用程序中。将 /#/ url 排除在应用程序之外似乎一切正常,但是当用户刷新浏览器时,它说找不到页面。它要去的 url 是我的路由器应该指向的地方:

$routeProvider
      .when('/', {
        templateUrl: 'views/coverPage.html',
        controller: 'MainCtrl'
      })
      .when('/coverPage', {
        templateUrl: 'views/coverPage.html',
        controller: 'MainCtrl'
      })

这只是我的路由器页面的一个示例。同样,这在我通过按钮链接时有效,但是当我加载 url:http://www.someurl.com/somepath/coverPage 时,它说找不到页面。

【问题讨论】:

    标签: angularjs yeoman


    【解决方案1】:

    如果它工作正常,从链接导航但刷新时找不到页面,这似乎是服务器端问题。

    请务必从服务器的指定 url 加载正确的 Angular 应用程序。您需要一种与服务器端路由匹配的通配符 url。但在不了解您的应用程序的更多细节的情况下,我只能猜测。

    【讨论】:

    • 好吧,我使用 yeoman 构建了它,因此是它们的标签。不过,我可能应该对此进行更详细的介绍。我正在使用 yeoman angular,除了这个刷新问题,整个东西都很好。它发生在带有 grunt serve 的本地机器上,当我把它放在我们的服务器上时,这就是为什么我认为这更像是一个角度问题。但我还没有验证。
    • jjt.io/2013/11/16/… 这个网站给了我所有需要的答案。
    猜你喜欢
    • 2016-09-13
    • 2012-06-30
    • 2018-06-12
    • 2012-06-01
    • 2015-08-05
    • 2015-07-09
    相关资源
    最近更新 更多