为什么说前后端分离不利于 SEO 了?

本贴最后更新于 2318 天前,其中的信息可能已经时异事殊

为什么说前后端分离不利于 SEO,分离之后又是通过那些方案解决 SEO 这种问题的呢?

  • SEO

    发布对别人有帮助的原创内容是最好的 SEO 方式。

    35 引用 • 200 回帖 • 31 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    246 引用 • 1338 回帖
  • 后端
    44 引用 • 126 回帖 • 1 关注
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    9762 引用 • 44403 回帖 • 88 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • lizhongyue248 2 2 赞同 via Linux

    我来说说我的理解吧。
    第一个问题,为什么不利于 seo。
    前后端分离之前,我们都是在服务端渲染好了 html 页面再传过来,数据都已经在后端渲染在页面上了,爬过来的页面都是拥有数据的,所以利于搜索引擎蜘蛛爬取。如果前后端分离,你一开始请求的页面可能并没有你的数据,然后通过你请求出来的页面向后端发送请求,获取到数据以后,动态加载显示到页面上,这个时候搜索引擎蜘蛛想要爬到数据,就要有执行 JavaScript 的能力(google 的好像已经有了)。举个例子,最常见的 ajax 请求,页面加载的时候,ajax 请求到数据,然后加载 dom 等,如果搜索引擎蜘蛛不执行 ajax,那么可能爬的页面就没有数据了,只是一个空页面。现在是大部分的搜索引擎都不具备执行 JavaScript 的能力的。
    第二个问题,如何解决?

    1. PreRender 方式:预先渲染好 HTML,并针对于爬虫返回特定的 HTML
    2. ssr 方式,比如 vue 的 sst 解决方案
    3. 一动一静方式:提供两套前端,针对爬虫使用静态,针对用户使用动态。不过比较麻烦,而且现在 google 的已经可以模拟用户访问了。
    1 回复
  • someone9891 via macOS

    问一下,如果页面原本需要 js 加载的地方,预写默认数据 必须 vue {{data}} ,给这个 data 默认值,加载以后,再覆盖默认值,再想办法让这个默认值 隐藏掉,能解决这个问题吗?只是好奇乱想到的

    1 回复
  • lizhongyue248 1 赞同 via Linux

    我是这样理解你的意思的,提供了一套拥有默认值静态的页面,然后动态加载改变。搜索引擎爬到的也就是你的静态页面(默认值的),就和我说的第三种一动一静的方式类似了。

    但是对于 vue 设置默认值肯定是不能解决的,你将 vue 应用打包后查看他的 index.html 你会发现是个空页面,例如:

    <!DOCTYPE html> <html lang=en> <head\> <meta charset=utf-8> <meta http-equiv=X-UA-Compatible content="IE=edge"> <meta name=viewport content="width=device-width,initial-scale=1"> <link rel=icon href=/favicon.ico> <title>help-teacher</title> <link href=/js/about.6f585aad.js rel=prefetch> <link href=/css/app.c9c62653.css rel=preload as=style><link href=/js/app.8741d55b.js rel=preload as\=script> <link href=/js/chunk-vendors.c3474500.js rel=preload as=script> <link href=/css/app.c9c62653.css rel=stylesheet> </head> <body> <noscript> <strong>We're sorry but help-teacher doesn't work properly without JavaScript enabled. Please enable it to continue.</strong> </noscript> <div id=app> </div> <script src=/js/chunk-vendors.c3474500.js></script> <script src=/js/app.8741d55b.js></script> </body> </html>

    所以即便你使用 vue{{data}} 设置默认值,他也是需要执行 js 加载的,这个时候爬虫爬到的也不过是上面那个空页面。对于 vue 而言设置默认值肯定是不能够解决的。

    1 回复
  • someone9891 via macOS

    好的,明白了

EvilCodes
我的世界,我的代码,我的逻辑。

推荐标签 标签

  • gRpc
    11 引用 • 9 回帖 • 92 关注
  • 分享

    有什么新发现就分享给大家吧!

    248 引用 • 1794 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    412 引用 • 3588 回帖
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    79 引用 • 431 回帖
  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    12 引用 • 54 回帖 • 178 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖 • 5 关注
  • 机器学习

    机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

    83 引用 • 37 回帖
  • danl
    166 关注
  • Office

    Office 现已更名为 Microsoft 365. Microsoft 365 将高级 Office 应用(如 Word、Excel 和 PowerPoint)与 1 TB 的 OneDrive 云存储空间、高级安全性等结合在一起,可帮助你在任何设备上完成操作。

    5 引用 • 34 回帖
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    24 引用 • 241 回帖
  • Outlook
    1 引用 • 5 回帖 • 1 关注
  • Access
    1 引用 • 3 回帖 • 1 关注
  • FFmpeg

    FFmpeg 是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

    23 引用 • 32 回帖
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖 • 3 关注
  • JetBrains

    JetBrains 是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是 Java 编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA

    18 引用 • 54 回帖 • 2 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    35 引用 • 468 回帖 • 763 关注
  • 阿里云

    阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。

    84 引用 • 324 回帖
  • 京东

    京东是中国最大的自营式电商企业,2015 年第一季度在中国自营式 B2C 电商市场的占有率为 56.3%。2014 年 5 月,京东在美国纳斯达克证券交易所正式挂牌上市(股票代码:JD),是中国第一个成功赴美上市的大型综合型电商平台,与腾讯、百度等中国互联网巨头共同跻身全球前十大互联网公司排行榜。

    14 引用 • 102 回帖 • 316 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 269 回帖 • 1 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    5 引用 • 16 回帖 • 2 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    125 引用 • 74 回帖
  • OpenResty

    OpenResty 是一个基于 NGINX 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。

    17 引用 • 53 关注
  • SEO

    发布对别人有帮助的原创内容是最好的 SEO 方式。

    35 引用 • 200 回帖 • 31 关注
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    345 引用 • 749 回帖
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 181 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 396 关注