我已经将Elmah.MVC安装到我正在处理的项目中,并尝试浏览到/ elmah,但不断出现此错误:
您正在尝试从远程计算机访问ELMAH,但是 当前配置为不允许远程访问。您可以启用远程 通过将以下部分添加到此Web进行访问 站点的配置文件:
<configuration>
<configSections>
…
<sectionGroup name="elmah">
<section name="security" type="Elmah.SecuritySectionHandler, Elmah" />
</sectionGroup>
…
</configSections>
<elmah>
<security allowRemoteAccess="yes" />
</elmah>
…
</configuration>
问题是,我正在本地计算机上以调试模式运行应用程序,而不是远程运行。
我的Web配置如下:
<configuration>
<configSections>
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
</sectionGroup>
</configSections>
......
<appSettings>
<add key="elmah.mvc.disableHandler" value="false" />
<add key="elmah.mvc.disableHandleErrorFilter" value="false" />
<add key="elmah.mvc.requiresAuthentication" value="false" />
<add key="elmah.mvc.IgnoreDefaultRoute" value="false" />
<add key="elmah.mvc.allowedRoles" value="*" />
<add key="elmah.mvc.allowedUsers" value="*" />
<add key="elmah.mvc.route" value="elmah" />
<add key="elmah.mvc.UserAuthCaseSensitive" value="true" />
</appSettings>
......
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
......
<system.webServer>
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
</modules>
</system.webServer>
......
<elmah>
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="Elmah" />
<security allowRemoteAccess="false" />
</elmah>
</configuration>
我以前在其他项目中使用过Elmah,却没有遇到此问题。我正在使用Visual Studio 2017,MVC5和.NET Framework 4.5.2
有人有什么想法吗?
答案 0 :(得分:0)
我 HAD 同样的问题。我确定要在本地访问,我尝试了“ localhost”和“ 127.0.0.1”。 但是我可以使其至少与另一个较小的MVC项目一起工作。
将两者进行比较,我注意到elmah.corelibrary的版本存在差异,并且我现在认为最新版本1.2.2引起了该问题。
所以,我替换了2个dll,现在有了
并更新了package.config:
<package id="elmah.corelibrary" version="1.2" targetFramework="net461" />
<package id="Elmah.Mvc" version="2.1.2" targetFramework="net461" />
在Root web.config中,我有以下与elmah相关的行
在configSections部分:
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah" />
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah" />
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah" />
<section name="errorFilter" requirePermission="false" type="Elmah.ErrorFilterSectionHandler, Elmah" />
</sectionGroup>
在appSettings部分:
<add key="elmah.mvc.disableHandler" value="false" />
<add key="elmah.mvc.disableHandleErrorFilter" value="false" />
<add key="elmah.mvc.requiresAuthentication" value="false" />
<add key="elmah.mvc.IgnoreDefaultRoute" value="false" />
<add key="elmah.mvc.allowedRoles" value="*" />
<add key="elmah.mvc.allowedUsers" value="*" />
<add key="elmah.mvc.route" value="elmah" />
<add key="elmah.mvc.UserAuthCaseSensitive" value="true" />
在system.web部分:
<httpModules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
在system.webserver部分:
<modules>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" preCondition="managedHandler" />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" preCondition="managedHandler" />
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" preCondition="managedHandler" />
</modules>
并处于配置状态
<elmah>
<security allowRemoteAccess="true" />
</elmah>
为了使这一切正常进行,我付出了很多努力。最后一个属性当然可以设置为false(并且仍然可以在本地使用) 我希望它对您有用!