我安装了elmah.mvc nuget软件包,并保持该sans的默认配置,设置发送电子邮件并将其插入SQL数据库。使用Elmah MVC无法访问生产服务器上的/ elmah?
在我的本地机器上使用Visual Studio主机时,我可以打开我的应用程序并访问/ elmah以查看错误报告。但是,当我尝试访问生产中的/ elmah时,出现两个错误,首先出现403 access is denied
服务器错误。然后在我的电子邮件(从ELMAH)我得到:
System.Web.HttpException: Server cannot set status after HTTP headers have been sent.
任何人都知道是怎么回事,如何解决?谢谢。
我试着用下面的答案为止的建议如下:
在<system.webServer>
<handlers>
<add name="elmah" verb="GET" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah"/>
</handlers>
而且在<system.web>
<httpHandlers>
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
</httpHandlers>
我尝试的路径设置为两个elmah.axd
和简单~/elmah
。所有仍然给出同样的错误,仍然在本地工作,但不是在生产。
编辑:它实际上也适用于当我远程进入服务器并通过浏览器访问它(不使用localhost,但实际站点地址)。那么我没有什么权限?看起来像是在服务器级别。
你也想看看这篇文章,如果你是在生产中:http://stackoverflow.com/问题/ 4416318/how-to-secure-elmah-axd – 2012-07-26 17:13:14
我想我应该澄清一下,我只是指当通过本地主机以外的其他地方访问时,其他人不能访问我们的活动服务器。 – SventoryMang 2012-07-26 17:32:15
IIS 6或7?在IIS内的.axd文件上显式设置任何权限? – Josh 2012-07-26 19:20:45