所以,我对AngularJS来说很新,我正尝试在我的应用程序中使用AngularJs ngRoute。当url输入时AngularJS路由不起作用
它所有的工作顺利,当我开始在应用主页:
http://localhost:8080/appName/
当我点击从这点链接它工作的顺利进行。
但是,当我输入一个我知道存在/作品的URL时,它给了我一个404错误。如果我通过使用应用程序而不是url加载该链接,即使它具有相同的url。
Eg. http://localhost:8080/appName/search
将给出404,即使这是默认重定向的相同url。
的确,通过在该位置键入来加载的唯一url是我上面提到的基本URL。
我app.js看起来是这样的:
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider){
$routeProvider
.when("/search", {
templateUrl: "search.html",
controller: "SearchController"
})
.when("/results", {
templateUrl: "results.html",
controller: "ResultsController"
})
.when("/browse", {
templateUrl: "browse.html",
controller: "BrowseController"
})
.otherwise({redirectTo:"/search"});
//This gets rid of the # on the urls to the templates
$locationProvider.html5Mode(true);
}]);
我一个glassfish4服务器上托管这一点。
有什么明显的我失踪/误解有关ngRoute如何工作?是否有一些我缺少的设置?
所有帮助表示赞赏...
编辑1:作为@Matthew格林下面说,我需要配置Web服务器返回的index.html所有网页下方
http://localhost:8080/appName
我知道我在这里完全密集,但这里配置的是什么?我将代码放在MAVEN Jersey-Quickstart-Webapp中。
我想我们需要更多的信息 - 至少是$ routeProvider配置和你正在使用的特定的URL。 – Beartums
也许它会帮助你:http://stackoverflow.com/questions/22739455/htaccess-redirect-for-angular-routes –
我已经更新了问题,以显示基本的$ routeProvider设置,以及有问题的网址 –