我正在尝试使我们(基于AJAX的网站)网站更加适合搜索引擎。
我们有一个系统,在设置会话变量后,某些网址会重定向到主页面以更改主页面的行为。这是使用Controller.Redirect方法创建ActionResult。
例如,主页是:
但是如果我们想要链接到广播电台,我们使用:
重定向到主页面。但是,在这种情况下,由于在重定向之前设置的会话变量,显示的内容不同。
使用此重定向时,网页抓取工具会将哪些内容编入索引?
在这种情况下会保留会话吗?
据我所知,有一些可能的结果:
也许302是错误的状态发回。也许在这种情况下使用重定向的想法是有缺陷的。谁能开导我?
编辑:为什么我们这样做?理想情况下,我们只希望在地址栏中显示一个网址,因此我们希望始终重定向到主页面。当从重定向进入时,这将导致不同的标题和元描述,并且我们希望被爬虫接收并与预重定向URL相关联。EDIT2:在这种情况下检测我们是否被抓取工具击中并在没有重定向的情况下传送页面会更好吗?如何检测爬虫客户端?
答案 0 :(得分:2)
您应该考虑创建一个xml站点地图并将其提交给主要搜索引擎。你可以创建像radiotuna.com/kmtt(我的本地电台)这样的网址,这对于在结果中看到网址的人来说意味着什么。很容易在控制器中处理。
对于索引的内容,搜索引擎很挑剔。如果您发送“永久移动”,那么大多数引擎会记下他们找到的网址,并在内部使用您的新地址进行更新。但为什么要依赖它们呢?更好地做到并自己控制它。
答案 1 :(得分:1)
对于Google,他们会将Url与特定标题和元描述相关联。我的猜测是结果3,结果4会发生。它可以是两者,因为爬虫可以双向尝试。
如果您可以保留在地址栏中输入的网址,请执行此操作。对于爬虫和真实的人。用户通常不喜欢混淆重定向。此外,您还可以让用户轻松将Url发布到他们喜爱的广播电台,这将有助于PageRank。
您是否尝试过设置Google网站站长工具或在Google Analytics中查看数据? “内部链接”部分可让您深入了解网站的抓取方式。 “诊断”部分还会查找重复标题和元标记等内容。
答案 2 :(得分:0)
感谢大家的答案。这里的重大疏忽是使用sessionid cookie保存Session,除非我弄错了,否则当抓取工具访问时它将无法使用。回到绘图板。