使用 AngularJS 应用程序提供正确的 404 的最佳方法是什么?
一点背景:我正在构建一个 Angular 应用程序并选择使用
$locationProvider.html5Mode(true);
因为我希望 URL 看起来自然(并且与多页“传统”网络应用程序无法区分)。
在服务器端(一个简单的 Python Flask 应用程序),我有一个包罗万象的处理程序,它将所有内容重定向到 Angular 应用程序:
@app.route('/', defaults={'path': ''})
@app.route('/<path>')
def index(path):
return make_response(open('Ang/templates/index.html').read())
现在,我试图弄清楚如何处理 404 错误。我见过的大多数 Angular 应用程序都执行以下操作:
.otherwise({ redirectTo: '/' })
这意味着他们无法提供正确的 404。
但是,我更愿意返回正确的 404,带有 404 状态码(主要用于 SEO 目的)。
使用 Angular 处理 404 的最佳方法是什么?我应该不担心它并坚持一个包罗万象的事情吗?或者我应该删除所有内容并在服务器端提供正确的 404?
为清楚起见进行了编辑