IT이야기

MVC2의 이미지 및 robots.txt에 "IController를 구현하지 않음"오류가 발생할 경우

cyworld 2021. 3. 23. 21:14
반응형

MVC2의 이미지 및 robots.txt에 "IController를 구현하지 않음"오류가 발생합니다.


.aspx 파일을 제외한 모든 파일에 대해 웹 서버에서 이상한 오류가 발생합니다.

여기에 예가 있습니다. '/robots.txt'를 .jpg 이름이나 .gif 등으로 바꾸면 아이디어를 얻을 수 있습니다.

'/robots.txt'경로에 대한 컨트롤러를 찾을 수 없거나 IController를 구현하지 않습니다.

라우팅을 설정 한 방법과 관련이 있다고 확신하지만 정확히 무엇을해야하는지 잘 모르겠습니다.

또한 이것이 차이가 있다면 이것은 MVC와 WebForms가 혼합 된 사이트입니다.


라우팅에서 robots.txt 및 모든 aspx 페이지를 무시할 수 있습니다.

routes.IgnoreRoute("{*allaspx}", new {allaspx=@".*\.aspx(/.*)?"});
routes.IgnoreRoute("{*robotstxt}", new {robotstxt=@"(.*/)?robots.txt(/.*)?"});

파비콘도 무시할 수 있습니다.

routes.IgnoreRoute("{*favicon}", new {favicon=@"(.*/)?favicon.ico(/.*)?"});

경로를 제외하도록 정규식을 조정할 수 있습니다.

소스 에서 Haacked .


위에 주어진 무시 경로는 나를 위해 작동하지 않았지만 비슷한 경로를 찾았습니다.

routes.IgnoreRoute("{*staticfile}", new { staticfile = @".*\.(css|js|gif|jpg)(/.*)?" });

이 오류는 해당 영역의 뷰 내부에서 Html.Action 도우미를 사용하는 경우에도 발생할 수 있습니다. 이 도우미는 특별히 지정하지 않는 한 항상 해당 영역을 접두어로 사용합니다. 예 :

@Html.Action("Main", "Navigation", new { area = string.Empty })

나는 또 다른 해결책을 찾았 습니다 ... 나는 그것을 사용할 것이라고 생각하지 않지만 여기에 대답을 보여줄 가치가 있습니다.

다음은 (이론적으로) '.'가있는 컨트롤러를 찾는 것을 무시해야합니다. 그것에.

routes.MapRoute(
    "Default",                                              // Route name
    "{controller}/{action}/{id}",                           // URL with parameters
    new { controller = "Home", action = "Index", id = "" },  // Parameter defaults
    new { controller = @"[^\.]*" }                          // Parameter contraints.
);

아직 가지고 있습니까?

routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

... Global.asax.cs에 있습니까?

MVC는 기본적으로 거기에 배치하고이를 처리해야합니다.

그렇다면 문제는 MVC와 WebForms를 혼합하는 방법 일 수 있습니다.


존재하지 않는 리소스를 요청할 때이 오류가 발생했습니다.

특히, 사용자 지정 IE CSS 파일을 요청했습니다.

<!--[if lt IE 8]>@Styles.Render("~/Content/ie7.css")<![endif]-->

(이것은 IE에서 해석되는 조건 주석입니다 )

그러나 실제 리소스는 ~ / Content / ie / ie7.css에 존재했습니다.

따라서 라우팅을 수정하지 않고 리소스의 올바른 URL을 사용하여 오류를 해결했습니다.

참조 URL : https://stackoverflow.com/questions/2109841/im-getting-a-does-not-implement-icontroller-error-on-images-and-robots-txt-in

반응형