我正在做一个作为Azure网站托管的ASP.NET MVC 5网站,并且我已经包含了用于错误记录的ELMAH。一切似乎做工精细,除了我发现许多错误,像这样的:ELMAH记录的错误没有意义
公共动作方法“...”没有在控制器发现...
出现这些错误主要是当请求来自蜘蛛机器人,但他们似乎没有在响应中产生任何错误。此外,所有记录的控制器/操作名称都是完全有效的。
E.g.当我在我的网站上运行类似deadlinkchecker.com的工具时,我发现ELMAH中有数百个错误,而该工具生成的报告具有100%的有效链接。 ELMAH中的路径信息也是正确的。
为什么我看到这些错误?
取决于您的错误处理如何工作。仅仅因为Elmah记录了一个错误并不意味着你没有返回一个状态为200的404页的页面。如果你提供了你的错误处理代码,可能会更容易调试。 –
这些操作是否标记为POST?蜘蛛只会做GET请求 –
@ErikPhilips:没有错误处理代码。它全部在web.config中配置。 system.web/customErrors + system.webServer/httpErrors + elmah/errorLog(xml)。另外,如果Elmah记录上面的控制器/动作不匹配,为什么它能正常工作? – Koen