可能重复问题Best way to set up 404 pages in a angular SPA?,但我没有找到可靠的答案
我很想知道是否有办法告诉googlebot关于404页面?
有一个用于此目的的标签,称为prerender-status-code,但我没有找到Google Seo Team的任何官方文章,以确认他们尊重此元标记。
这是否足以遵循here中指定的最佳做法?
或者我应该做些什么? (也许与Google网站管理员工具有关?)
我对几个众所周知的SPA进行了研究,我注意到SoundCloud在他们的404页面上添加了一个nofollow标签,如下所示:
<meta content="noindex, nofollow" name="robots">
googlebot是否尊重后来由js添加的元标记?
答案 0 :(得分:0)
告诉谷歌机器人这是404页面的唯一方法是发送http状态代码404。
关于prerender-status-code。看来你已经在prernder.io上阅读了它。这个元标记背后的真正想法是告诉prerender它需要向客户端抛出的页面代码是什么。因此,您可以根据js应用程序的逻辑控制是否发送404(或任何其他代码)。您可以在此处阅读更多内容https://github.com/prerender/prerender/issues/347
我希望在实施高级谷歌机器人之后,我们所有人都能深呼吸! https://webmasters.googleblog.com/2017/12/rendering-ajax-crawling-pages.html
答案 1 :(得分:0)
您可以在404组件中动态添加元标记:
import { Component } from '@angular/core';
import { Meta } from '@angular/platform-browser';
@Component({
selector: 'app-notfound',
templateUrl: './notfound.component.html',
styleUrls: []
})
export class NotFoundComponent {
constructor(private meta: Meta) {
meta.addTag({ name: "robots", content: "noindex" });
}
Google自己在angular.io网站上进行操作:https://github.com/angular/angular/blob/7b56daffe68c1874ece7ac3b5e252e1edfed980a/aio/src/index.html