我创建了一个简单的AngularJS
项目,其中index.html
的路径为ProjectName/index.html
,其他html
文件位于projectName/templates/xxx.html
和{{1} }} path与script.js
相同。我的基本引用行是index.html
。但是当我刷新页面时,我发现找不到页面错误。
当我重新加载主页和学生页面时出现错误。
Myindex.html代码
<base href="/Projectname/">
我的script.js
<!DOCTYPE html>
<html ng-app="myModule">
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<base href="/routing/">
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular-route.min.js"></script>
<script type="text/javascript"
src="script.js"></script>
</head>
<body>
<table style="">
<tr style="background-color: gray;">
<th colspan="2" class="header"><h1>Header</h1></th>
</tr>
<tr>
<td class="leftMenu" style="background-color: #cecece;"><a
href="home">Home</a> <a href="courses">Courses</a> <a
href="students">Students</a></td>
<td class="mainContent" colspan="2"
style="background-color: lightgray;"><ng-view></ng-view> </td>
</tr>
<tr style="background-color: gray;">
<td colspan="2" class="footer"><b>Website Footer</b></td>
</table>
</body>
</html>
Nd我的其他html文件,如home.html,students.html,可在路径Projectname / Templates / xxx.html中的Templates文件夹中找到
答案 0 :(得分:1)
你指定的基本href和url是不同的:Projectname与ProjectName大小写在某些系统上很重要
此外网址需要重写服务器端,因为刷新页面时会向服务器生成一个新的GET请求,导致404,因为服务器不知道您在Angular中定义的路由
答案 1 :(得分:0)
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule .* index.html [L]
</IfModule>