ASP.NET无法摆脱“500-内部服务器错误”

时间:2021-02-03 03:31:15

I am creating an ASP.NET webage that retrieve and insert data inside CRM 2011. Everything was going fine, the page was being deployed to the server and it was ready to test.

我正在创建一个ASP.NET网站,用于在CRM 2011中检索和插入数据。一切都很顺利,页面正在部署到服务器并且已准备好进行测试。

Suddenly a new change come out, and after I deleted the files in the server and republished the project (I know it is not needed, but still..) I could not access the website anymore.

突然出现了一个新的变化,在我删除服务器中的文件并重新发布项目后(我知道它不需要,但仍然......)我再也无法访问该网站了。

All I get is 500- Internal server error There is a problem with the resource you are looking for, and it cannot be displayed.

我得到的只是500-内部服务器错误您正在寻找的资源存在问题,并且无法显示。

I tried turning on the debug function with debug="True" on the page header, I set

我尝试在页眉上使用debug =“True”打开调试功能,我设置了

<customErrors mode="Off"/>
<compilation debug="true" targetFramework="4.5"/>

On the web.config file, and I also tried adding

在web.config文件中,我也尝试添加

<httpErrors errorMode="Detailed" />

but none of them helped having a better error message.

但他们都没有帮助获得更好的错误信息。

My web.config file is:

我的web.config文件是:

   <?xml version="1.0"?>
<!--
  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"/>
  </configSections>
  <connectionStrings>
    <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-ASP-20130619150943;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-ASP-20130619150943.mdf"/>
  </connectionStrings>
  <!--
    For a description of web.config changes for .NET 4.5 see http://go.microsoft.com/fwlink/?LinkId=235367.

    The following attributes can be set on the <httpRuntime> tag.
      <system.Web>
        <httpRuntime targetFramework="4.5" />
      </system.Web>
  -->
  <system.web>
    <customErrors mode="Off"/>
    <compilation debug="true" targetFramework="4.5"/>
    <httpRuntime/>
    <pages controlRenderingCompatibilityVersion="4.0">
      <namespaces>
        <add namespace="System.Web.Optimization"/>
      </namespaces>
      <controls>
        <add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt"/>
      </controls>
    </pages>
    <authentication mode="Forms">
      <forms loginUrl="~/Account/Login" timeout="2880" defaultUrl="~/"/>
    </authentication>
    <profile defaultProvider="DefaultProfileProvider">
      <providers>
        <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>
      </providers>
    </profile>
    <membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/"/>
      </providers>
    </membership>
    <roleManager defaultProvider="DefaultRoleProvider">
      <providers>
        <add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>
      </providers>
    </roleManager>
    <!--
            If you are deploying to a cloud environment that has multiple web server instances,
            you should change session state mode from "InProc" to "Custom". In addition,
            change the connection string named "DefaultConnection" to connect to an instance
            of SQL Server (including SQL Azure and SQL  Compact) instead of to SQL Server Express.
      -->
    <sessionState mode="InProc" customProvider="DefaultSessionProvider">
      <providers>
        <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection"/>
      </providers>
    </sessionState>
  </system.web>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="DotNetOpenAuth.Core" publicKeyToken="2780ccd10d57b246"/>
        <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.1.0.0"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="DotNetOpenAuth.AspNet" publicKeyToken="2780ccd10d57b246"/>
        <bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.1.0.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>
  </entityFramework>

  <appSettings>
    <add key="CRMUserName" value="xxxx" />
    <add key="CrmUserPassword" value="yyyy" />
    <add key="OrganizationUri" value="https://uuuuuu/XRMServices/2011/Organization.svc" />
    <add key="HomeRealmUri" value="" />
  </appSettings>
</configuration>

I get an error message when I run the page. The error message is:
An error occurred when verifying security for the message System.ServiceModel.FaultException: An error occurred when verifying security for the message.

我运行页面时收到错误消息。错误消息是:验证消息的安全性时发生错误System.ServiceModel.FaultException:验证消息的安全性时发生错误。

The section where the error fires is:

错误触发的部分是:

  RetrieveAttributeRequest retrieveFreightTerm = new RetrieveAttributeRequest
  {
    EntityLogicalName = "account",
    LogicalName = "address1_freighttermscode",
    RetrieveAsIfPublished = true
  };

Any ideas?

2 个解决方案

#1


6  

I opened the website from the server running IIS and I could see a detailed error page, with all the information I needed

我从运行IIS的服务器打开了网站,我可以看到一个详细的错误页面,其中包含我需要的所有信息

#2


4  

Many times it happens after editing the web.config file, we leave some tag not properly closed or to say not well formed. This also leads to 500 Internal server error.

很多时候,在编辑web.config文件后会发生这种情况,我们会留下一些标签未正确关闭或说不完整。这也会导致500内部服务器错误。

To make sure your web.config atleast passes this check, open it in Internet Explorer. In case any tags are missed out, the IE will show you the corresponding error.

要确保您的web.config至少通过此检查,请在Internet Explorer中打开它。如果错过任何标签,IE将显示相应的错误。

#1


6  

I opened the website from the server running IIS and I could see a detailed error page, with all the information I needed

我从运行IIS的服务器打开了网站,我可以看到一个详细的错误页面,其中包含我需要的所有信息

#2


4  

Many times it happens after editing the web.config file, we leave some tag not properly closed or to say not well formed. This also leads to 500 Internal server error.

很多时候,在编辑web.config文件后会发生这种情况,我们会留下一些标签未正确关闭或说不完整。这也会导致500内部服务器错误。

To make sure your web.config atleast passes this check, open it in Internet Explorer. In case any tags are missed out, the IE will show you the corresponding error.

要确保您的web.config至少通过此检查,请在Internet Explorer中打开它。如果错过任何标签,IE将显示相应的错误。