我正在使用作为Azure网站托管的ASP.NET MVC 5网站,我已将ELMAH包含在错误记录中。一切似乎工作正常,除了我发现很多这样的错误:
公共行动方法' ...'在控制器上找不到......
这些错误主要出现在请求来自蜘蛛机器人的情况下,但它们似乎不会在响应中产生任何错误。此外,所有记录的控制器/操作名称都是完全有效的。
E.g。当我在我的网站上运行像deadlinkchecker.com这样的工具时,我在ELMAH中发现了数百个错误,而该工具生成了一个包含100%有效链接的报告。 ELMAH中的路径信息也是正确的。
为什么我会看到这些错误?
答案 0 :(得分:2)
如果您添加Head以及Get,则此错误将消失,蜘蛛将正确读取您的网站。正如内森所说,你可以关闭它们,但是你并没有真正解决这个问题,只是忽略了它,如果蜘蛛无法100%阅读你的网站,你可能会失败
这应该可行,让小提琴手试试吧!
[AcceptVerbs(HttpVerbs.Get | HttpVerbs.Head)]
public ActionResult Test()
{
return View();
}