我正在尝试修改我的angularjs应用的网址。最初我的网址是http:localhost:8080 / a / web / app / index.html#/和http:localhost:8080 / a / web / app / index.html#/ next
当我将以下代码插入我的app.js
时 var App =angular.module('App', [
'ngCookies',
'ngResource',
'ngRoute',
])
.config(function ($routeProvider,$locationProvider) {
$routeProvider
.when('/', {
templateUrl: '/a/web/app/views/main.html',
controller: 'ctrl_main'
})
.when('/next', {
templateUrl: '/a/web/app/views/next.html',
controller: 'ctrl_next'
});
$locationProvider.html5Mode(true);
});
我的新网址变成了http:localhost:8080和 http:localhost:8080 / next。 我的问题是当我尝试在http:localhost:8080 / next重新加载页面时,404 Not Found错误即将来临
答案 0 :(得分:1)
预计将采用html5模式。如果您要求重新加载,浏览器将向其位置栏中的URL发送请求。
因此,您需要将服务器配置为实际发送回您在angular应用程序中使用的所有可收藏URL的index.html页面。整个页面将重新加载,角度应用程序将重新启动,$ route服务将重新启动,并将调用控制器并显示为URL配置的部分。
答案 1 :(得分:0)
我知道答案有点过时,但在我的情况下,为index.html添加<base>
属性有帮助,例如:
<base href="/a/web/app/">