2011-04-13 111 views
0

我需要做些什么才能将?_escaped_fragment_=支持添加到我的服务器上?我希望谷歌能够通过我的ajax网站爬行。我的哈希值已经在#!形式?_escaped_fragment_ = - 无头浏览器

但我不知道如何告诉我的服务器,当我进入mywebsite.com/?_escaped_fragment_=section到我的浏览器,这样的URL mywebsite.com/section,这将是等于mywebsite.com/#!

感谢

回答

5

简单答案 - 我的方法(即将用于具有约50,000个AJAX生成的URL的站点)是让node.js服务器使用无头环境(尝试僵尸,幻影或其他)来加载该站点,确保它能够执行JavaScript并读取DOM - 然后在运行时,如果它是Google请求的片段,则向node.js服务器发出请求,该请求将加载该站点执行javascript,等待响应,并返回输出到浏览器的HTML。

如果这听起来像很多工作 - 我约90%的代码完成了这一切,你只需在网站顶部放一行(PHP)代码,应用程序,并使用远程node.js服务器为您完成剩下的工作。代码将是开源的,所以如果你想在节点服务器上自己设置代码,你可以 - 或者如果它是一个PITA来自己设置它,我可能会有一个活动服务器启动并运行你的应用程序/网站会向?_escaped_fragment_请求发送请求,并获取html快照。它还实现缓存,因此每隔X天只请求一次。

看着这个空间 - 只是有几个扭曲的工作,它会在我的网站(josscrowcroft.com),我也会把它放在一个github回购。

+0

好的,所以如果我明白了,我需要的第一件事就是node.js服务器。非常感谢。然后我会等到你将代码发布到github上... – simPod 2011-04-27 21:36:20

+0

是的 - 从下周开始,我将在客户端的站点上测试一个机架空间虚拟服务器,所以一旦它在野外进行测试并且我已经检查过不管它放在服务器上的是什么样的负载,我都会在后几个周内发布回购。 – 2011-04-28 09:08:49

+0

好的,谢谢你... – simPod 2011-04-29 22:11:08