我在ASP.NET MVC 4站点上通过NuGet安装了ELMAH。
在开发机器上,应用程序安装在根目录下。这一切都有效,并且通常是ELMAH页面。它总是这样,我的意思是开发机器上的工作,不是吗?
但是在服务器上,应用程序安装在子文件夹(〜/ tracker)中。虽然ELMAH工作正常,但页面没有样式,因此难以阅读。
我需要做些什么才能让页面风格化?
据推测,样式来自可以在web.config中配置的资源。但是如何?
我发现我收到了一个高度相关的错误:
System.Web.HttpException: A public action method 'stylesheet' was not found on controller 'Elmah.Mvc.ElmahController'.
路径如下:
/tracker/elmah/stylesheet
这显然与ELMAH页面源中的Link标签有关:
<link rel="stylesheet" type="text/css" href="/tracker/elmah/stylesheet" />
但是如何配置此网址?
答案 0 :(得分:6)
您的“elmah.mvc.route”设置是什么?如果从路径中删除“/ tracker”,你能看到elmah屏幕吗?
开箱即用,elmah的路线设置为:
<add key="elmah.mvc.route" value="elmah" />
你需要
<add key="elmah.mvc.route" value="tracker/elmah" />
您的路由配置正确地重定向了控制器操作的请求,但elmah在不使用您的路由配置的情况下打印样式表地址本身,因此您需要告诉它使用哪个路由/ URL作为其引用。