Ale*_*lex 6 search-engine web-applications prerender parse-platform
我正在使用Parse.com构建一个网站,并尝试通过FB和Google机器人抓取它.该网站基于parse.com,不使用Angular.
我已经查看了这里的主题,并在我的结尾设置相应的东西.我已经创建了一个端点来测试这些东西:
app.get('/hello/:id', function(req, res) {
res.render('hello');
});
Run Code Online (Sandbox Code Playgroud)
以下是我在日志中的内容,当谷歌机器人提取网址时
https://www.example.org/hello/#!a/b
I2015-11-10T05:35:18.580Z]v642 Ran custom endpoint with:
Input: {"method":"GET","url":"/hello/","headers":{"accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","accept-encoding":"gzip,deflate","cache-control":"no-cache","from":"googlebot(at)googlebot.com","host":"www.example.org","user-agent":"Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)","version":"HTTP/1.1","x-forwarded-for":"10.252.5.60","x-forwarded-proto":"https"}}
Result: Success
Run Code Online (Sandbox Code Playgroud)
由于Google抓取工具不会使用片段重写Url,因此会发送错误的网页快照(对应于没有参数的基本网址+路径).有趣的是,facebookbot用一个转义片段取代了shebang,然后获取下面的url:
/hello/?_escaped_fragment_=posts/abcdef
Run Code Online (Sandbox Code Playgroud)
在解析结束时正确处理,pre-render.io发送正确的缓存页面.
我几个小时以来一直在讨论这个问题,Parse的人们无处可寻找一个相当基本和重要的问题.
有人曾经设法让Parse的单页设计与谷歌和Facebook机器人合作,还是仅仅是一个失败的原因?
谢谢!
PS:现在看来,谷歌机器人尝试渲染AJAX页面,而不考虑转义的碎片.换句话说,现在看来,默认的行为,但在同一时间,现有的AJAX页面可能仍与逃脱片段爬......看到线程这里从Web开发人员的反馈.
| 归档时间: |
|
| 查看次数: |
153 次 |
| 最近记录: |