1. 您的位置:首页 > seo技术 >内容

[上海白帽站群免费]搜索ASP。网:使用。ashx文件排除重复内容

这一系列目录

 

如果不同的链接指向具有大量相同内容的页面,则此现象将被称为"重复内容"。如果网站有大量重复内容,搜索引擎会认为此网站的价值不高。因此,我们应该尽量避免重复内容。

动态网站的重复内容通常由URL参数引起,URL重写将恶化(这很有趣)。如果使用原始URL参数,搜索引擎可以做出正确的判断。如果发现重复内容是由URL参数引起的,则系统会自动处理内容;URL重写mask URL参数,但会使搜索引擎无法识别URL参数。例如:

原始URL:
Http://www.freeflifying.com/articles.aspx?Id=231&Catelog=博客
Http://www.freeflifying.com/articles.aspx?Id=231&Catelog=新闻

URL重写后的

URL:
Http://www.freeflifying.com/blog/231.html
Http://www.freeflifying.com/news/231.html

这些URL实际上指向相同的页面内容,即ID=231的页面内容。但是,本文被博客和新闻引用。由于各种原因,最终URL如上所示。
有两种解决方案:一种是使用机器人协议"排除"一种是通过301永久重定向一个URL到另一个URL。

今天,让's谈论机器人协议。简而言之,机器人指的是搜索引擎。对于Google,我们称之为"Spider)"。蜘蛛很礼貌。在爬行网页内容之前,您将首先征求您的意见。您和机器人之前已经根据机器人协议进行了通信。有两种实现方法:

上海克隆站群开源

1. 添加一个robots.txt文本到网站的根目录,例如:

#静态内容,禁止"admin"文件夹下的所有页面
用户代理:*
Disallow:/admin

#行注释;
用户代理指示搜索引擎。*表示所有搜索引擎的特定搜索引擎,例如user AGENT:googlebot;
disallow指定无法访问的目录或页面。注意:1。本文对案例敏感;2。网站根目录必须以"\"#开始;。
像本系列一样,我们将重点关注ASP。NET技术。有关robots.txt文字,请参阅http://www.googlechinawebmaster.com/2008/03/robotstxt.html。

但是我们如何动态生成这个文件(实际上有很多这样的要求)?I/O操作,在根目录中写入TXT文件。代码:由actipro codehighlighter(免费软件)生成的代码突出显示
http://www.codehighlight.com/
-><%@webhandler language=&"C#"class="handler"%>

使用系统;
使用系统。网络;

Public ClassHandler:ihttphandler{

Public VoidProcessrequest(httpcontext context){

HTT响应=上下文。响应;

响应。清除();

//回复。contenttype="text/plain";如果您想使用IE6查看页面,则出于未知原因不能使用此语句。

//以下两个语句应该是由实际使用的数据库动态生成。
回应。写入("用户代理:**n");
响应。写入("不允许:/news/231.html \ n&##34;);

//引用静态机器人文件的内容,该文件存储未更改的阻塞内容
响应。writefile("〜Static-robots.txt");

回应。冲洗();
}

公共可增强使用{
获取{
返回错误;
}
}

}

通用处理器实现ihtPhandler。在前面的urlrewrite部分中,我们实际上在ASP中讨论了httpmodule。在net的应用生命周期中,有一个名为"管道":HTTP请求通过httpmodule"的"过滤器/过程"最后是httphandle"处理器"已达到。httpmodule和httphandle形成一个"管道",非常生动。粘贴图片:

 

如果您仍然不熟悉它,viewSource codePage还实现了ihttphandler,so*上海白帽站群免费。aspx文件是最常用的httphandle。但是,页面不仅是HTTP处理器,而且还嵌入了复杂的页面生命周期事件。因此,从资源保护的角度来看,很多时候我也可以使用定制的,更轻便的*。完成一些简单的工作。与TXT文件类似,我们还可以生成验证代码(JPG文件)和XML文件。

然后,您需要执行urlwrite:Code Void Application_beginrequest(对象发送者,eventargs E)
{
//在应用程序启动时运行的代码
Httpcontext Context=Httpcontext。当前;
字符串Currentlocation=Context。请求。网址。localpath;

如果(当前位置。tolower()=上海白帽站群免费"/网站1/robots.txt")
{
上下文。重写路径("〜/Handler。ashx");
}

}

 

在这种情况下,arobots.txt文件存在于网站的根目录中。

2. 将元标签添加到要阻止的页面
<元id="元"名称="机器人"content="noindex,nofollow"/>
noindex表示页面无法索引
nofollow表示页面无法"follow"(详见Seo hack)
这是静态页面的效果。如果需要动态生成,这很简单:代码保护的空白页面_load(对象发送者,事件组E)
{
Htmlmeta=New Htmlmeta();
Meta。名称="机器人";
元。Content="Noindex,nofollow";
这。标题。控制。添加(元);
}

描述和关键字也可以在Meta中指定,并且它们的技术实现是相同的。

那么我们如何选择这两种方法?我的一些建议:
1。主机文件删除后,系统将不再请求阻塞的页面。如果使用Meta,spider必须首先请求页面,然后做出未恢复的判断,此时HTTP请求已发送,服务器上的资源已被浪费。此外,如果执行了太多的元阻塞操作,spider可能不会对网站留下太深刻的印象,减少或丢弃网站的索引;
2。当robots.txt文本从左到右匹配,这里没有常规匹配!所以有时我们必须使用meta。例如,我们文章开头的URL:
Http://www.freeflifying.com/blog/231.html
Http://www.freeflifying.com/news/231.html

最后,让'谈论一些预防措施:
1。请勿在所有页面上使用相同的关键字和描述。尽管有文章,但这是一个容易的错误。aspx是一个页面,但添加URL参数后,它将变成数千页。如果您在页面上编写关键字和描述,这将使这数千个页面使用相同的关键字和描述!
2. 避免使用基于URL的sessionid。ASP。net可以设置为在clien时使用基于URL的sessionidt禁用饼干,效果类似于:
http://www.freeflifying.com/(S(C3HVOB5WIRRNDFD564)/文章。aspx

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。如若转载,请注明出处:http://www.botadmin.cn/sylc/4313.html