Angular 应用在 github.io 上抛出 404 错误
Angular app throws 404 error on github.io
我写了一个相当简单的应用程序并将其放在 github 上以便可以在网上查看。但是 url 似乎有问题(或者可能是其他问题!)。我设法让它在本地主机上工作的唯一方法是在我的导航栏中使用 # 符号并使用常规 url (没有 # ) 在我的配置函数中:
<ul class="nav navbar-nav navbar-right">
<li ng-class="{ active: isActive('/')}"><a href="/#/">Home</a></li>
<li ng-class="{ active: isActive('/games')}"><a href="/#/games">Games</a></li>
<li ng-class="{ active: isActive('/contact')}"><a href="/#/contact">Contact</a></li>
</ul>
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
controller: 'Posts',
templateUrl: 'controllers/posts.html'
})
.when('/games', {
controller: 'Games',
templateUrl: 'controllers/games.html'
})
.when('/contact', {
controller: 'Games',
templateUrl: 'controllers/contact.html'
})
.when('/:id', {
controller: 'Games',
templateUrl: 'controllers/reviews.html'
})
.otherwise({
redirectTo: '/'
});
}]);
但它不适用于 github.io,只有第一页可以。当我点击 games
按钮时,它显示
404 file not found
虽然我当然有所有 html 文件在 controllers 文件夹中。
您的 href
中有一个额外的 /
删除前导的,因为它指示转到域根目录
<a href="/#/contact">Contact</a>
应该是:
<a href="#/contact">Contact</a>
这使您在 href 中只剩下一个散列
我写了一个相当简单的应用程序并将其放在 github 上以便可以在网上查看。但是 url 似乎有问题(或者可能是其他问题!)。我设法让它在本地主机上工作的唯一方法是在我的导航栏中使用 # 符号并使用常规 url (没有 # ) 在我的配置函数中:
<ul class="nav navbar-nav navbar-right">
<li ng-class="{ active: isActive('/')}"><a href="/#/">Home</a></li>
<li ng-class="{ active: isActive('/games')}"><a href="/#/games">Games</a></li>
<li ng-class="{ active: isActive('/contact')}"><a href="/#/contact">Contact</a></li>
</ul>
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
controller: 'Posts',
templateUrl: 'controllers/posts.html'
})
.when('/games', {
controller: 'Games',
templateUrl: 'controllers/games.html'
})
.when('/contact', {
controller: 'Games',
templateUrl: 'controllers/contact.html'
})
.when('/:id', {
controller: 'Games',
templateUrl: 'controllers/reviews.html'
})
.otherwise({
redirectTo: '/'
});
}]);
但它不适用于 github.io,只有第一页可以。当我点击 games
按钮时,它显示
404 file not found
虽然我当然有所有 html 文件在 controllers 文件夹中。
您的 href
中有一个额外的/
删除前导的,因为它指示转到域根目录
<a href="/#/contact">Contact</a>
应该是:
<a href="#/contact">Contact</a>
这使您在 href 中只剩下一个散列