【问题标题】:Is it possible to implement SEO with client-only Single Page Application? [duplicate]是否可以使用仅限客户端的单页应用程序实现 SEO? [复制]
【发布时间】:2014-12-06 16:04:33
【问题描述】:

问题: 是否可以使用仅限客户端的单页应用程序实现 SEO?

主题: 我正在实现一个不基于特定服务器架构的 REST 应用程序。所以我必须在不使用“服务器端静态渲染/快照”技术的情况下实现 SEO……有没有办法只使用 javascript+html5?

总结: javascript & html5 - 没有服务器端 = SEO 可行吗?

这里是“此应用的概念代码”

<head>
    <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
    <script src="myApp.js"></script>
</head>
<body>
    <div id='head'></div>
    <!-- extra html code here -->
    <div id='content'></div>
    <!-- extra html code here -->
    <div id='footer'></div>
    <script type="text/javascript">
        var page=myApp.getPage(); // get current page name from url fragment
        $("#head").load("pages/"+page+"-head.html"); // load html for head div
        $("#content").load("pages/"+page+"-content.html"); // load html for content div
        $("#footer").load("pages/"+page+"-footer.html"); // load html for footer div
        myApp.loadContent(); // get contents from REST APIs and load inside html
    </script>
</body>

编辑:我不是在问谷歌爬虫是否可以呈现 js 代码,而是:在我的上下文中,是否有办法为大多数搜索引擎实现 SEO。 然而,经过一些研究后,答案是实际上没有技术可以做到这一点(除了一些为您创建 html 快照的预渲染企业服务)。看来ATM唯一的解决办法就是等未来对搜索引擎爬虫更好的js支持。

【问题讨论】:

    标签: javascript html rest seo client-side


    【解决方案1】:

    没有特定的服务器脚本这一事实并不重要。搜索引擎爬虫是一个客户端,重要的是它获取的内容,无论该内容是静态的还是动态生成的。

    也就是说,如果您的页面完全是用 JavaScript 构建的,那确实确实很重要。如果它是一个通过 JavaScript 呈现为不同页面的大页面,搜索引擎可能仍会将其索引为单个页面,或者根本不索引。

    Google 现在支持 JavaScript,但它仍处于试验阶段,大多数其他爬虫仍然不支持它。通常最好在浏览器中禁用 JavaScript 并加载页面,然后您会看到爬虫看到的内容。

    【讨论】:

    • 如您所见,我正在开发一个 single app page,它通过 javascript 动态加载其“子页面”。因此,禁用 javascript 您将看不到任何内容。只是一个空模板
    • 我知道单页是什么意思,谢谢。单页应用程序也可以具有静态内容,甚至可以预先加载所有内容(在您提供的 Wikipedia 链接中也提到了这一点)。无论如何,我已经在答案中描述了在这种情况下会发生什么,但要特别清楚:您完全动态加载的空无 JavaScript 页面可能被 Google 索引并且 不会 被其他主要搜索引擎收录。您唯一能做的就是确保页面在非 JavaScript 情况下也有正确的内容。
    • 感谢您的“额外清除”,但我正在尝试使用谷歌网站管理员工具检查谷歌索引,似乎谷歌无法呈现我的动态内容。也许我需要做一些额外的工作
    【解决方案2】:

    当然可以。

    Google SEO 机器人 (googlebot) 可以运行您的 JS 并在现代浏览器上“看到”页面,因此它们可以扫描页面的 DOM,无论它是如何创建的(服务器端或客户端) .如果您的 JS 是标准的,搜索引擎将能够以用户身份阅读您的页面。

    所以你可以使用你所有的 SEO 知识用 jquery .load() 方法来构建它。

    来源:http://googlewebmastercentral.blogspot.ca/2014/05/understanding-web-pages-better.html

    【讨论】:

    • 这是一个巨大的过度简化。
    猜你喜欢
    • 2021-11-18
    • 1970-01-01
    • 2015-06-02
    • 2019-06-30
    • 2021-07-01
    • 2021-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多