Javascript看似无限的可能性使得基于HTML和CSS的公共网站成为过去。然而,尽管JavaScript为用户提供了出色的动态体验,但它也为开发人员创建了一个雷区。因此,Javascript搜索引擎优化成为一个不容忽视的问题。

javascript是如何工作的?

除了HTML和CSS,JavaScript是三种核心Web开发技术之一。HTML用于创建铁字品圈静态页面(即代码按原样显示在浏览器中,并且不能根据用户的操作进行更改),而JavaScript则使页面具有动态性。当用户单击按钮或从下拉框中选择值时,程序员可以使用JavaScript更改HTML标记的值和属性。javascript与HTML代码一起放在页面上,并与代码一起使用。

客户端和服务器端呈现

在讨论JavaScript时,我们需要提到两个概念并理解它们之间的区别:服务器端呈现和客户端呈现。

传统上,与静态HTML页面一样,代码在服务器上呈现(服务器端呈现)。当访问一个页面时,google bot将获得完整的现成内容,因此它不需要做任何事情,只需下载CSS文件并在浏览器中显示信息。

另一方面,javascript通常运行在客户机(客户机渲染)上,这意味着Google Bot最初获取的页面没有内容,然后javascript创建用于加载渲染的DOM(文档对象模型)内容。每次加载页面时都会发生这种情况。

显然,如果google bot不能正确地执行和呈现你的javascript,你将无法看到你想要看到的页面和内容。这就是JavaScript搜索引擎优化带来的大部分问题。

如何避免这些问题?如何检查网站是否正确呈现?

让谷歌机器人正确展示你的网站需要你集中精力正确展示链接和内容。如果你不提供链接,谷歌机器人很难在你的网站上找到它的方式。如果你没有在你的网站上正确的呈现内容,谷歌机器人将无法看到它。

这里有一些选项可以帮助您

1。网站:订单

首先,site:该命令将显示Google当前为您的站点工作的页面数。如果站点的许多页面还没有被索引,这可能是内部链接问题的迹象。

其次,您可能需要检查由javascript本身加载的内容是否已被Google编入索引。

要做到这一点,您需要找到一行文本,这些文本不会显示在初始HTML代码中,并且只会在JavaScript执行之后加载。然后,使用站点:yourdomain。在谷歌索引中搜索这行文本的COM命令。

请注意,这不适用于cache:commands,因为缓存的页面版本只包含未经处理的原始代码。

2铬41

2017年8月,谷歌更新了其搜索指南,并宣布他们正在使用Chrome41展示它。这是对SEO的一个改变,因为现在你可以检查谷歌如何渲染页面,而不是猜测。

现在你可以下载chrome 41,看看google bot是如何渲染和查看网站或网页的。

三。铬焊机

JavaScript代码的某些部分可能被编程为执行用户特定的操作-单击、滚动等。但是,Google Bot不是用户,它不单击或向下滚动,因此它看不到您正在加载的内容。

检查是否在没有任何用户操作的情况下加载所有基于javascript的元素的最快和最简单的方法是使用chrome开发工具:

用Chrome打开你的网站

在devtools中打开元素选项卡

通过查看浏览器构建的实际页面的DOM查看如何呈现页面-确保所有关键导航和内容元素都已存在。

我建议你在Chrome41中检查一下,它会让你相信GoogleBot可以从技术上看到这个元素。

当然,您也可以在当前版本的Chrome中进行检查和比较。

4。谷歌搜索控制台的抓取与展示

谷歌搜索控制台中的捕获和呈现功能允许我们了解谷歌如何呈现我们的网站。

首先,您必须复制并粘贴您的网址。然后单击“提取并渲染”并等待一段时间。这将允许您查看谷歌机器人是否可以呈现您的网页和查看任何相关的文章、副本或链接。

在这里,您还可以使用谷歌的移动友好测试,它显示javascript错误和呈现的页面代码。

5。服务器日志分析

为了验证谷歌机器人是如何爬过你的网站的,你能做的最后一件事就是服务器日志分析。通过仔细查看服务器日志,您可以检查google bot是否访问过特定的网址,以及google bot是否检索过任何网址。

在服务器日志中,您可以分析许多元素。例如,您可以检查

最新文章

  1. Intellij IDEA 常用快捷键
  2. Oracle_SQL函数-单行函数
  3. Spring+Maven+Dubbo+MyBatis+Linner+Handlebars—Web开发环境搭建
  4. oracle相关环境变量配置
  5. ln 软链接与硬链接的区别再次回顾
  6. ArcGIS制图之Maplex自动点抽稀
  7. 【算法】简单动态规划——三逆数的O(N^2)解法!
  8. PHP同一个IP绑定多个域名(六)
  9. EL函数
  10. win7 64位安装 oracle 11G 和 使用 PLSQL Developer 连接服务器
  11. android 三级菜单 BaseExpandableListAdapter
  12. jquery的$.extend和$.fn.extend作用及区别/用span实现进度条/腾讯云IIS端口号修改
  13. python常用库之random
  14. 关闭Ubuntu桌面版GUI
  15. oracle 正则表达式 匹配
  16. win/mac平台搭建ionic开发环境教程(转)
  17. 【CJOJ2616】 【HZOI 2016】偏序 I(cdq分治,树状数组)
  18. sql distinct去除重复
  19. Java SE 基础知识(二)
  20. wamp升级php7

热门文章

  1. 【Makefile】Makefile中的赋值符号=、:=、?=、+=
  2. SQL-W3School-基础:SQL 教程
  3. iOS创建带删除线和价钱符号的Label
  4. Spring Boot Lombok配置
  5. 【C/C++开发】【VS开发】win32位与x64位下各类型长度对比
  6. 函数节流之debounce
  7. hbase数据导出和恢复 设置双master + 查看hbase表占用磁盘大小
  8. mysql数据库之单表查询多表查询
  9. linux学习命令收集
  10. Linux第三阶段题型测试