我尝试将 404 页面添加到托管在 Firebase 服务器上的 angularjs 项目中。我创建了一个自定义 404 页面并添加了以下代码:
function routeConfig($stateProvider, $urlRouterProvider, $locationProvider)
{
$urlRouterProvider.otherwise('/pages/errors/error-404');
}
现在它可以工作,但我缺少一些东西,因为当我检查浏览器的网络面板时,状态代码是"200",但它应该是"404"。
我应该怎么做?
$urlRouterProvider.otherwise
只是引导AngularJS在没有URL与提供者的规则匹配时应该导航到哪个URL。
这并不意味着在服务器上找不到资源(实质上返回 404(。为此,您需要做更多的事情,包括从服务器提供此 404 页面,并使用 404 作为状态代码。
这里有一个资源可以为您指明正确的方向:
- AngularJS UI 路由器处理 404s