相关疑难解决方法(0)

如何从SPA返回HTTP 404状态代码?

我看到了这样的一些问题(就像这一个),但没有一个问题具体解决这个问题.

因此Google 现在支持SPA,大多数Web浏览器都支持HTML5 pushState.

我的AngularJS(但可能是任何JS的东西)网站正在使用URL来确定API路由.然后它执行API调用,然后相应地呈现内容.

但是,现在Google将此网站标记为"被黑客入侵",因为每个网址都会返回HTTP 200状态代码(包含example.com/get-free-viagra).公平,但我如何归还404?或者至少告诉谷歌这是一个未找到的页面?他们似乎没有提供这些信息,我非常担心SEO.

我想到了一些想法:

  • 弃用我当前的设置(我使用AWS S3来托管静态网站),然后使用expressJS框,使用中间件执行API调用并在需要时返回404.但是,我不喜欢这种方法,因为它会损害性能(每个前端请求有两个API调用).
  • 使用window.location重定向到一个适当的404页.但是,我不确定Google是否会遵循它,并且已经不鼓励更改URL.
  • 使用rel="nofollow"未找到的页面,但我觉得这还不够.

我现在正沮丧地倾向于第一种选择.

javascript seo html5 angularjs single-page-application

13
推荐指数
1
解决办法
2332
查看次数