自动将rel =“ nofollow”添加到ASP.NET中的所有出站链接

时间:2018-11-06 00:24:19

标签: c# jquery asp.net rel nofollow

StackOverflow上的任何天才都曾提出过一种解决方案,可以自动向所有外部链接添加rel="nofollow"

我只想表示歉意,我对后端编码非常陌生-我的尝试从字面上看没有,因此为什么我没有发布它们。

我在php中找到了一些解决方案,但在ASP.NET中却找不到。

我在jQuery中有一个解决方案,但问题是-加载后将其添加。告诉Googlebot忽略我页面上的所说链接是没有好处的。

jQuery解决方案是:

$("div.content a[href^='http']:not([href*='mysite.co.uk'])").attr("rel", 
"follow");

1 个答案:

答案 0 :(得分:0)

一种方法是创建自己的自定义HttpModule,该自定义将响应设置为使用派生的流类来过滤HTTP正文。那里有一个有关如何创建基本HttpModule的链接示例。 Github或Nuget可能有一个过滤器类,当内容类型为text/html时,有人可以编写该过滤器类来修改输出流,您可以根据需要进行修改。

要自行构建一个,基本上需要附加到BeginRequest事件并为HttpApplication的response.filter设置一个过滤器。该过滤器将负责实现以下操作:读取page / control / ihttphandler创建的响应,并在将其发送给客户端之前对其进行修改,然后对客户端进行写操作。