这样会不会被搜索引擎惩罚

2021-06-11 15:22:14 +08:00
 balabalaguguji

有个页面,比较复杂,之前用 vue 写的,问题就是搜索引擎无法搜录这种客户端渲染的页面。

现在想的一个办法是,用服务端渲染出来页面内容,只有内容,没有排版和样式,然后客户端再用 vue 重新渲染为正确的页面。

不知道这样会不会被搜索引擎认为是用户看到的和搜索引擎看到的不一样而惩罚。

4910 次点击
所在节点    程序员
23 条回复
kop1989
2021-06-11 15:30:27 +08:00
不会,搜索引擎只负责收录。
否则动态页面都要被搜索引擎惩罚。
julyclyde
2021-06-11 15:55:37 +08:00
1 为什么要考虑搜索引擎怎么想
2 为什么要搞这么动态
waiaan
2021-06-11 16:03:49 +08:00
不是有 robot.txt 吗?
balabalaguguji
2021-06-11 16:15:55 +08:00
@waiaan #3 你应该理解错了这个文件的用法,请看百度的解释:robots.txt 可以告诉百度您网站的哪些页面可以被抓取,哪些页面不可以被抓取。
Jblue
2021-06-11 16:17:56 +08:00
没有排版和样式谷歌排名也不会高啊,收录的意义是啥? vue 可以 SSR
shapl
2021-06-11 16:27:52 +08:00
改 nuxt 吧。
waiaan
2021-06-11 16:35:19 +08:00
@balabalaguguji
还真是,但你重新渲染后原来服务端渲染的内容就没了,不知道搜索引擎对这个是怎么处理的。
zjuster
2021-06-11 16:37:16 +08:00
搜索引擎最终都会作为结构化的信息文本来存储网页内容。

如果你的网页信息对 crawler 或者“用户”来看,其内容是不一样的,或者超出合理的经常变化,有被 spam 的可能。

Bing 的 cloaking 就是指这种“挂羊头卖狗肉”的情况。main content 是一个正常文本,但实际上用户访问这个“main content”巴掌大,其他全是无关或者 seo 内容。
vx2e
2021-06-11 18:27:09 +08:00
你看看花瓣网,用百度的 user agent 去访问试试。有些网站这么搞没事,有些就说不准了。
no1xsyzy
2021-06-11 22:03:37 +08:00
你考虑下用户开了 NoScript 的情况
不一致不是说动态的不一致,而是指请求结果不一致

对于 Google,我怀疑如果说装用户的动态结果和爬虫 UA 的静态结果一致(甚至可能只要词云基本一致)也不会惩罚,或者动态生成的内容会爬出最终结果,比如我曾经搜索到网易云的评论,而后我发现它的评论是动态请求获得的。
DeutschXP
2021-06-11 22:27:19 +08:00
至少 Google 收录应该应用类似 headless browser,所以不会抓取不到动态内容的。
在上古时期,2010 年之前,那时候一种流行的 SEO 方法,就是在页面底部堆上一堆关键词,开始用 display:none;,后来用背景色,再后来 google 就能识别这种作弊方法了,网页文本的位置,文字大小,显示效果,都会影响分数。
simonsww
2021-06-11 22:32:45 +08:00
这种其实问题不大,影响很小。
Kaciras
2021-06-11 22:44:22 +08:00
Vue 有 SSR 功能啊
westoy
2021-06-11 22:51:19 +08:00
我的建议是真要做就保留页面结构
你这个和黑链还有隐藏堆砌关键词作弊特征很像
小站没多少人工介入的机会, 没什么试错机会的


@DeutschXP
会, 但效果不好
google 以前搞过一套标准, 网站拿#!_escaped_fragment_吐数据给它, 结结实实坑了一波网站
后来 twiiter 、fb 之类的大站都老老实实第一次加载搞服务端渲染, 然后再通过 js 加载和渲染
不过现在大平台靠搜索引擎带流量的比例很低了, 这两年开始都逐渐砍掉服务端渲染了
xieqiqiang00
2021-06-11 23:55:13 +08:00
谷歌支持 SPA 应用的收录的,会运算好页面再爬内容,不需要专门做 SSR,其他搜索引擎不清楚
ChefIsAwesome
2021-06-12 01:07:11 +08:00
谷歌推荐的是这个服务器渲染的工具: https://developers.google.com/search/blog/2019/01/dynamic-rendering-with-rendertron
我前两年用过,收录很好,没问题。
谷歌是支持爬 js 页面。但是对同一个页面它会采集好几次。第一次采集时,只会采集 html 。第二次采集什么时候进行你也不知道,这时候收录就有问题了。
Rocketer
2021-06-12 07:14:29 +08:00
不用那么复杂,把内容放到 noscript 里就可以。

首次请求一个 URL 给它把内容放到 noscript 里,以后就是 SPA 了
opengps
2021-06-12 10:14:13 +08:00
我理解不会处罚,毕竟这确实是原始内容,而不是虚假内容
nashaofu
2021-06-12 11:08:54 +08:00
可针对搜索引擎返回服务端渲染内容,正常用户还是使用客户端渲染,例如用 ua 区分
balabalaguguji
2021-06-12 12:11:21 +08:00
@xieqiqiang00 #15 谷歌也不支持的,只有同步 js 可以支持

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/782919

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX