2

web.configに次のものがあります。

<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <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>
  <elmah>
    <security allowRemoteAccess="yes" />
    <errorLog type="Elmah.SqlErrorLog, Elmah"
    connectionStringName="PhumafConnectionString" />
    <errorMail
      from="*******"
      to="*********"
      subject="Application Exception"
      async="false"
      smtpPort="0"
      useSsl="true" />
  </elmah>
  <system.net>
    <mailSettings>
      <smtp deliveryMethod="Network">
        <network host="smtp.gmail.com" port="587" userName="*********" password="********" />
      </smtp>
    </mailSettings>
  </system.net>
  <connectionStrings>
    <add name="PhumafEntities" connectionString="metadata=res://*/PhumafDB.csdl|res://*/PhumafDB.ssdl|res://*/PhumafDB.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=DRAGAN-THINK\SQLEXPRESS;initial catalog=Phumaf;integrated security=True;multipleactiveresultsets=True;application name=EntityFramework&quot;"
      providerName="System.Data.EntityClient" />
    <add name="PhumafConnectionString" connectionString="Data Source=DRAGAN-THINK\SQLEXPRESS;Initial Catalog=Phumaf;Integrated Security=True;MultipleActiveResultSets=True;Application Name=EntityFramework"
      providerName="System.Data.SqlClient" />
  </connectionStrings>
  <system.web>
    <customErrors mode="On" defaultRedirect="~/genericError.aspx">
      <error statusCode="404" redirect="~/404.aspx" />
    </customErrors>
    <httpHandlers>
      <add verb="POST,GET,HEAD" path="elmah.axd"
  type="Elmah.ErrorLogPageFactory, Elmah" />
    </httpHandlers>
    <httpModules>
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
    </httpModules>
    <compilation debug="true" targetFramework="4.5">
      <assemblies>
        <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
      </assemblies>
    </compilation>
    <httpRuntime targetFramework="4.5" />
  </system.web>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
  </entityFramework>
</configuration>

また、binフォルダーにElmah.dllを追加しました。アプリケーションを実行するたびに、次のメッセージを含むIISエラー画面が表示されます。

HTTP Error 500.22 - Internal Server Error
An ASP.NET setting has been detected that does not apply in Integrated managed pipeline mode.

Most likely causes:
This application defines configuration in the system.web/httpModules section.

Detailed Error Information:
Module     ConfigurationValidationModule
Notification       BeginRequest
Handler    PageHandlerFactory-Integrated-4.0
Error Code     0x80070032
Requested URL      http://localhost:13094/index.aspx
Physical Path      c:\users\dragan\documents\visual studio 2012\Projects\WebApplication2\WebApplication2\index.aspx
Logon Method       Not yet determined
Logon User     Not yet determined
Request Tracing Directory      C:\Users\Dragan\Documents\IISExpress\TraceLogFiles\WEBAPPLICATION2

私のXMLが有効であり、100%有効であることを検証しました:/

何が悪かったのか本当にわかりません。Elmahを実装しようとするまでは、以前はすべて問題ありませんでした。私は私の心を失い始めています、あなたが私が間違ったことを見るならば助けてください。

4

2 に答える 2

11

次の2つのリンクを確認して くださいhttp://code.google.com/p/elmah/issues/detail?id=231

http://mvolo.com/breaking-changes-for-aspnet-20-applications-running-in-integrated-mode-on-iis-70

このエラーを解決するための重要な部分は次のとおりです

1)ASP.NETアプリケーションでは、またはで構成を指定するときに移行が必要です。500 –内部サーバーエラーが発生します。これには、HTTPエラー500.22およびHTTPエラー500.23が含まれる可能性があります。統合管理パイプラインモードに適用されないASP.NET設定が検出されました。これは、ASP.NETモジュールとハンドラーを統合モードのIISセクションと構成セクションで指定する必要があるために発生します。回避策:1)統合モードで正しく機能するには、アプリケーション構成を移行する必要があります。AppCmdを使用してアプリケーション構成を移行できます。

%windir%system32inetsrvAppcmdmigrate config“” </ p>

于 2012-12-12T19:59:46.360 に答える
0

もう1つのオプションは、httphandlersの後にweb.configに追加することです。

例えば

<system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="Access-Control-Allow-Origin" value="*" />
                <add name="Access-Control-Allow-Headers" value="*" />
                <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE, OPTIONS" />
            </customHeaders>
        </httpProtocol>
        <handlers>
            <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
            <remove name="OPTIONSVerbHandler" />
            <remove name="TRACEVerbHandler" />
            <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
        </handlers>
        <validation validateIntegratedModeConfiguration="false" />
        <modules runAllManagedModulesForAllRequests="true">
            <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>
于 2021-07-21T11:13:21.603 に答える