【发布时间】:2015-05-21 14:06:51
【问题描述】:
我现在对此很感兴趣。我在 Linux 上使用 Apache 服务器在本地(本地主机)运行这个 Angular 前端。当我尝试访问 localhost 时,一切正常,我得到了 index.html。但现在我在 index.html 中有一个链接,它应该将用户重定向到 localhost/users。但我似乎无法让这个工作,我已经尝试了每一个解决方案,但似乎没有任何工作。也许你们中的一些人看到我做错了什么?
我的 app.js
(function() {
var app = angular.module('linkrec', ['ngRoute']);
app.config(function($routeProvider, $locationProvider) {
$locationProvider.html5mode(true).hashPrefix('!');
$routeProvider
.when('/users', {
templateUrl: '/users.html',
});
});
app.controller('UsersController', [ '$http', function($http) {
var linkrec = this;
linkrec.users = [];
$http.get('https://localhost:9443/users').success(function(data){
linkrec.users = data;
});
} ]);
})();
我的 index.html
<!DOCTYPE <!DOCTYPE html>
<html ng-app="linkrec">
<head>
<title>LinkRec</title>
<link rel="stylesheet" type="text/css" href="bootstrap/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="linkrec.css">
</head>
<body>
<script type="text/javascript" src="node_modules/angular/angular.js"></script>
<script type="text/javascript" src="node_modules/angular/angular-route.js"></script>
<script type="text/javascript" src="app.js"></script>
<h1>LinkRec</h1>
<div class="container" ng-view>
<a href="/users"><h2>Users</h2></a>
<h2>Vacancies</h2>
<h2>Groups</h2>
</div>
</body>
</html>
我的 .htaccess 曾经是
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) /index.html/#!/$1
</IfModule>
我的 .htaccess 现在
# Apache .htaccess
# angularjs pushstate (history) support:
# See http://www.josscrowcroft.com/2012/code/htaccess-for-html5-history-pushstate-url/
FallbackResource /index.html
有人发现我的错误吗?角度文件在那里并且正确链接。提前致谢。
【问题讨论】:
标签: javascript angularjs apache .htaccess route-provider