2014-11-04 2 views
1

Это мой RouteConfig файл:robots.txt маршрут MVC не работает

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

    routes.MapRoute("Robots.txt", 
     "robots.txt", 
     new { controller = "Home", action = "Robots" }); 

    routes.MapRoute(
     name: "Default", 
     url: "{controller}/{action}/{id}", 
     defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
    ); 
} 

При переходе к www.mysite.com/Robots.txt я получаю 404.

В моей HomeController У меня есть роботы() действие.

Что я могу делать неправильно?

Редактировать: going to www.mysite.com/Robots дает мне ошибку сервера 404. Переход к www.mysite.com/Robots.txt дает мне ошибку IIS 404. Может ли это что-то с этим делать?

Переход к www.mysite.com/Home/Robots работает, но www.mysite.com/Home/Robots.txt дает IIS 404.

ответ

1

вам действительно нужно robots.txt доступны в других местах, чем www.mysite.com/robots.txt ли?

В противном случае просто сделать:

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.IgnoreRoute("robots.txt"); 
} 

И поместить файл в корневой папке на Visual Studio.

+1

_ "В моем HomeController у меня есть действие Robots()" _ - Угадайте, что OP хочет создать динамически созданный файл robots.txt. – CodeCaster