- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我使用 React Router 已经有一段时间了,我一直在使用 hashHistory
来处理路由。在某些时候,我打算将应用程序转换到 browserHistory
,但我很好奇为什么 Google 的“Fetch as Google”功能似乎对根路由以外的任何东西都不起作用(/
)。很明显,它正在渲染某些东西,而不是服务器未处理的路由。 (下图)
我看到 Google 有 deprecated their AJAX crawling scheme ,这让我相信我不再需要处理 ?_escaped_fragment_=
,但即便如此,我也无法让 Google 呈现任何其他路线。
例如,网站是 www.learnphoenix.io
,类(class)列在 www.learnphoenix.io/#/phoenix-chat/lessons
下。然而,谷歌的 Fetch as Google网站管理员中的功能重定向到主页并仅呈现主页。使用 _escaped_fragment_
会导致相同的结果。
有没有办法允许 Google 使用 hashHistory
索引我的网站,或者我是否只需要接受只有我的主页会被索引,直到我切换到 browserHistory
?
最佳答案
默认情况下,google 似乎会忽略 url 片段 (#)。根据这篇可能过时的文章,使用 #!将告诉谷歌这些片段可用于定义不同的规范页面。
https://www.oho.com/blog/explained-60-seconds-hash-symbols-urls-and-seo
值得一试,尽管 ReactRouter 不支持 Hashbang,因为它应该被弃用。
更好的选择可能是硬着头皮在你的 react-router 中使用 browserHistory
(pushState)。问题在于,如果您运行的是静态无服务器应用程序,/phoenix-chat/lessons
之类的路径将返回 404。在 AWS 中,也有一个破解方法。将您的 404 页面设置为您的应用索引页。
http://blog.boushley.net/2015/10/29/html5-deep-link-on-amazon-s3/
感觉很脏,但还是值得一试。希望这个答案对您有所帮助!
关于seo - hashHistory、_escaped_fragment_ 和 Google,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39461343/
我有基于 javascript( Angular )的网站。我还有每个页面的代理页面,这些页面通过 _escaped_fragment_ 参数对谷歌爬虫可见。所有 redirectis 工作正常。我不
我在重写 Apache 时遇到了问题,由于某些原因,上面的第一条规则在没有标志“R”的情况下不工作。 但我想在内部进行重定向。 # FROM http://mysite.ru # TO
我试图让爬虫可以看到我的 meteor 应用程序。我添加了 Spiderable 包并安装了 Phantom.js。当我去 localhost:3000/?_escaped_fragment_= 时,
我使用 React Router 已经有一段时间了,我一直在使用 hashHistory 来处理路由。在某些时候,我打算将应用程序转换到 browserHistory,但我很好奇为什么 Google
Google 发现我允许最终用户使用 ajax 加载来浏览我的内容,并且将我的页面作为用户客户端加载,而不是在新页面加载时请求它们。因此,它不是尝试索引 www.mysite.com/page,而是请
我正在使用 Google App Engine 托管一个带有 Python 网络服务的 AngularJS 应用程序。根路径/设置为返回 index.html,/api/* 请求转到 Python C
我正在努力使基于 AJAX 的网站对 SEO 友好。按照网络教程中的建议,我添加了“漂亮”href链接的属性:контакт并且,在默认情况下使用 AJAX 加载内容的 div 中,用于爬虫的 PHP
我确实将我的网站 (GWT) 设置为可被 Google 抓取。在 Google webmastertool 上使用“fetch as google”页面时,我看到以下模式: 访问“http://www
我正在尝试使用 ajax 来理解 SEO ...我所知道的是我所有的 ajax 链接都必须是(漂亮的 url)格式为 #!anything 的东西因此,当机器人阅读我的页面并找到任何#! url 尝试
各位开发者大家好! 我们即将完成 ajax 网络应用程序第一阶段的开发。在我们的应用程序中,我们使用的哈希片段如下: http://ourdomain.com/#!list=last_ads&orde
我正在尝试在 Facebook 上通过我的应用分享此 URL: http://www.example.com/#!v;id=NH1NlYov3bKJ 但是,它会自动替换为: http://www.ex
假设我有一个带有此 URL 的 AJAX 应用程序:http://www.foo.com/bar#!a=1&b=2&c=3 crawable AJAX会是什么?来自 GoogleBot 的请求是什么样
关于 Google 的 AJAX 抓取规范,如果服务器为 #! 返回一件事(即一个 JavaScript 重的文件)当 #! 发送到 Googlebot 的 URL 和其他内容(即页面的“html 快
我有一个 JavaScript 代码量很大的应用程序,我希望对其进行索引。我的网站上有一个快照目录,可以将其提供给 Google 机器人。这些位于 mysite.com/snapshots/ 下。 我
我正在尝试为我的主干应用程序使用预渲染服务,让我的页面在谷歌上编入索引。 当我专门将 googlebot 添加到用户代理列表时,我知道设置工作正常,但有人建议我不要这样做,而建议使用 _escaped
我的网站目前使用 hashbang URLs 和 Google 弃用的建议,即在使用 _escaped_fragment_ 查询参数请求时提供静态页面。 使用弃用方法的静态预生成页面示例: https
Google 刚刚完成(我现在看到页面刷新在我面前)JavaScript 索引。这很酷,因为我不再需要我所有的工具了。 Google 现在将执行 JavaScript - SEO JavaScript
好的,这就是 Google 所说的 ( https://developers.google.com/webmasters/ajax-crawling/docs/getting-started )。 当
我知道我可以反其道而行之,并让 server.com/#!/mystuff 成为可 ajax 抓取的,但我想知道是否可以反其道而行之。如果我有 server.com/mystuff 并将重定向发送到
如果您使用 hashbang URL,则 /#!/path/to/content ,Facebook 抓取工具(以及 Googlebot)将自动转发至 /?_escaped_fragment_=/pa
我是一名优秀的程序员,十分优秀!