当前位置 : 主页 > 网络推广 > seo >

由于302重定向到错误页面,搜索引擎无法索引asp.net站点

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在努力确定我们的 Asp.net网站没有被搜索引擎索引的原因 – 整个网站.当我使用谷歌的“获取Googlebot”工具时,它会抛出以下错误.我确保我的网站可以禁用会话(即在web.config中设置
我正在努力确定我们的 Asp.net网站没有被搜索引擎索引的原因 – 整个网站.当我使用谷歌的“获取Googlebot”工具时,它会抛出以下错误.我确保我的网站可以禁用会话(即在web.config中设置sessionMode =“Off”),我已经在网上搜索过,但仍然没有运气.

这是我从googlebot得到的错误:

HTTP/1.1 302 Found
 Date: Thu, 02 Dec 2010 23:05:49 GMT
 Server: Microsoft-IIS/6.0
 X-Powered-By: ASP.NET
 X-AspNet-Version: 2.0.50727
 Location: /ErrorPage.aspx?aspxerrorpath=/Default.aspx
 Cache-Control: private
 Content-Type: text/html; charset=utf-8
 Content-Length: 168

 <html><head><title>Object moved</title></head><body>
 <h2>Object moved to <a href="%2fErrorPage.aspx%3faspxerrorpath%3d%2fDefault.aspx">here</a>.</h2>
 </body></html>
我自己找到了答案.

在使用之前,请务必检查Request.UserLanguages!= null.此外,请确保将CurrentCulture设置为有效的默认值.这两个检查的原因是因为机器人不使用Request.UserLanguages – 它总是为空.浏览器确实使用Request.UserLanguages.换句话说:如果Request.UserLanguages为null,则不要设置CurrentCulture.

这是问题所在:

我站点中的所有aspx页面都继承自继承自System.Web.UI.Page的自定义基类.在使用仅为机器人抛出异常的代码覆盖OnLoad()或init事件之前,这不是问题.我在OnLoad()事件中有这行代码:

Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(Request.UserLanguages [0]);

从浏览器访问aspx页面时,此代码非常有用.咄!谁不打算使用浏览器……?回答:googlebot和所有其他机器人.

如何检查googlebot是否存在索引您网站的问题:

>如果您还没有注册谷歌webmastertools.
>转到实验室 – >抓取Googlebot
>输入您要检查的网址.然后点击状态链接以查看googlebot找到的内容.如果googlebot返回任何重定向(如302),这通常不是一件好事.如果您网站上的所有网页都有302重定向到您的自定义错误页面,那么您就遇到了问题.这意味着当googlebot尝试访问它们时,您的网页会抛出错误(未处理的异常).通过您的Page_Load()和Init()函数查看googlebot可能存在的错误.您还可以使用名为curl(http://curl.haxx.se/)的酷命令行应用程序测试您的页面.使用此工具,我可以在发布到生产之前在我们的测试服务器上测试该站点(这是您在使用谷歌抓取时每次进行更改时必须执行的操作).

网友评论