禁止在MVC中使用robots.txt文件执行操作

时间:2013-08-22 10:57:07

标签: asp.net-mvc

在我的ASP.Net MVC应用程序中,我有一个控制器/动作网址,我想在Robots.txt中添加Disallow部分,以便我的视图不会被抓取,因此不被搜索引擎索引。

但是我已经使用像这样的路线重命名了控制器/动作

 routes.MapRoute(
                "693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0",
                "693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0",
               new { controller = "Index", action = "Report" }
           );

所以我的网址就像这样

http://localhost:51227/693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0

我想知道在Robots.txt中禁止我应该包含哪些网址被搜索引擎忽略。

 User-agent: *
 Disallow: /Index/Report

          OR

 Disallow: /Index/693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0

请建议。

2 个答案:

答案 0 :(得分:2)

如果您只希望抓取工具忽略该特定网址,则应阻止/693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0

但是,他们仍然会找到您的/Index/Report网址,因此您可能也想阻止它?

答案 1 :(得分:0)

搜索引擎不一定(知道)使用ASP.NET MVC,也不知道如何设置路由。它只是看到最终的URL。见The Web Robots Pages

  

您需要为要排除的每个网址前缀单独设置“禁止”行

所以'禁止'网址:

http://localhost:51227/693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0

变为:

Disallow: /693a7878-4b1d-4934-bad2-cec60e4ffbd1ec801ac0