问题是:
当网址 www.some.com 时,我无法访问主页,但可以在www.some.com/#!
或www.some.com/#!/
我定义了默认的网络应用程序路径:
$routeProvider.when('', {templateUrl: pathToIncs + 'home.html', controller: 'homeController'});
$routeProvider.when('/', {templateUrl: pathToIncs + 'home.html', controller: 'homeController'});
另外添加选项:
$routeProvider.otherwise({redirectTo: '/404'});
转为html5模式
$locationProvider.html5Mode(false);
$locationProvider.hashPrefix('!');
正如我所说的那样 - 当我来到像 www.some.com /#!这样的时候它会起作用,但是当 www.some.com 时却没有。在这种情况下,将调用 .otherwise 选项。
在任何其他情况下,路由工作良好。在我的应用程序中,我得到了一个网址,如www.some.com/#!/login,www.some.com /#!/ signup
P.S。服务器端适用于php5 + nginx P.P.S.我使用Angular 1.2.0和ngRoute模块
答案 0 :(得分:2)
尝试设置<基数>标签
<head>
<base href="/">
</head>
为家庭定义路线
.when('/home', {
templateUrl: pathToIncs + 'home.html',
controller: 'homeController'
})
在“/”
上使用redirectTo.when('/', {
redirectTo: '/home'
})
以及.otherwise
.otherwise({
redirectTo: '/home'
});