2012-04-13 4 views
1

Я создал приложение, использующее asp.net 4, он отлично работает на моем локальном сервере, но когда я переключился на внешний сервер, у меня возникла какая-то странная проблема с моим web.config, я принимаю эту ошибкуНевозможно прочитать компиляцию раздела «сборки» моего Web.config

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

.

Кажется, что внутри раздела <compilation> есть некоторые проблемы. Просто я должен сказать, что когда я удаляю раздел <compilation>, мое приложение может отображаться и запускаться, но без какого-либо доступа к базе данных.

web.config


<?xml version="1.0" encoding="utf-8"?> 
<configuration> 

    <configSections></configSections> 
    <appSettings /> 


    <connectionStrings> 
    <add name="ImmoEntities" connectionString="metadata=res://*/Model.ImmoModel.csdl|res://*/Model.ImmoModel.ssdl|res://*/Model.ImmoModel.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=XXXXX;Password=XXXXX;User Id=XXXXX;database=XXXXX&quot;" providerName="System.Data.EntityClient" /> 
    </connectionStrings> 


    <system.web> 

    <globalization culture="auto:fr-FR" uiCulture="auto:fr-FR" /> 
    <siteMap defaultProvider="XmlSiteMapProvider" enabled="true"> 
     <providers> 
     <clear /> 
     <add name="XmlSiteMapProvider" type="System.Web.XmlSiteMapProvider" siteMapFile="Web1.siteMap" /> 
     <add name="web1" type="System.Web.XmlSiteMapProvider" siteMapFile="/Web1.sitemap" /> 
     <add name="web" type="System.Web.XmlSiteMapProvider" siteMapFile="/Web.sitemap" /> 
     <add name="web3" type="System.Web.XmlSiteMapProvider" siteMapFile="/Web3.sitemap" /> 
     <add name="web4" type="System.Web.XmlSiteMapProvider" siteMapFile="/Web4.sitemap" /> 
     </providers> 
    </siteMap> 

    <!-- Web.Config Configuration File --> 

    <compilation debug="true" targetFramework="4.0"> 
     <assemblies> 
     <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> 
     <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     <add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> 
     <add assembly="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> 
     <add assembly="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
     <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> 
     <add assembly="System.Web.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> 
     <add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" /> 
     </assemblies> 
    </compilation> 



    <!-- 
      Set compilation debug="true" to insert debugging 
      symbols into the compiled page. Because this 
      affects performance, set this value to true only 
      during development. 
     --> 





    <!-- 
      The <authentication> section enables configuration 
      of the security authentication mode used by 
      ASP.NET to identify an incoming user. 
     --> 

    <authentication mode="Windows" /> 
    <httpHandlers> 
     <add path="CaptchaImage.axd" verb="GET" type="MSCaptcha.CaptchaImageHandler, MSCaptcha" /> 
    </httpHandlers> 

    <!-- 
      The <customErrors> section enables configuration 
      of what to do if/when an unhandled error occurs 
      during the execution of a request. Specifically, 
      it enables developers to configure html error pages 
      to be displayed in place of a error stack trace. 

     <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm"> 
      <error statusCode="403" redirect="NoAccess.htm" /> 
      <error statusCode="404" redirect="FileNotFound.htm" /> 
     </customErrors> 
     --> 

    <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"> 
     <controls> 
     <add assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagPrefix="ajaxToolkit"/> 

     <add tagPrefix="cc1" assembly="MSCaptcha" namespace="MSCaptcha" /> 

     </controls> 
    </pages> 

    </system.web> 


    <!-- 
     The system.webServer section is required for running ASP.NET AJAX under Internet 
     Information Services 7.0. It is not necessary for previous version of IIS. 
    --> 


    <system.webServer> 
    <httpErrors errorMode="Detailed" /> 
    <asp scriptErrorSentToBrowser="true"/> 
    <validation validateIntegratedModeConfiguration="false" /> 
    </system.webServer> 
    <system.web> 
    <customErrors mode="Off"/> 
    <compilation debug="true"/> 
    </system.web> 




    <system.data> 
    <DbProviderFactories> 
     <remove invariant="MySql.Data.MySqlClient" /> 
     <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> 
    </DbProviderFactories> 
    </system.data> 

</configuration> 

Любая идея, что может быть? Я пробовал по-другому, но все равно не работает.

+0

ли вы смотрите на журнал событий сервера не хватает? – Oded

+0

да, я проверил журнал сервера. но кажется нормальным. Нет отслеживания ошибок. – GENE

ответ

1

Убедитесь, что в GAC установлены все следующие сборки с надлежащей версией или находятся внутри папки Bin вашего проекта.

Если в GAC отсутствует какая-либо сборка, которая не упоминается в корзине, вам снова нужно запустить .net framework 4 на сервере.

Если что-то не хватает в мусорном контейнере, вы должны убедиться, что при включении этой сборки в свой проект вы поделили ее свойство «Копировать» на «true». или непосредственно скопировать и вставить эту сборку в корзину.

System.Design, Version=4.0.0.0 
System.Data.Entity, Version=4.0.0.0 
System.Web.Extensions, Version=4.0.0.0 
System.Web.Extensions.Design, Version=4.0.0.0 
System.Windows.Forms, Version=4.0.0.0 
System.Web.DynamicData, Version=4.0.0.0 
System.Core, Version=4.0.0.0 
System.ComponentModel.DataAnnotations, Version=4.0.0.0 
System.Data.Linq, Version=4.0.0.0 
System.Web.Entity, Version=4.0.0.0 
System.Xml.Linq, Version=4.0.0.0 

Позвольте мне знать, если я что-то

+0

Я скопировал всю пропавшую DLL в папку bin, внутри моего проекта! но я все еще имею ту же самую страницу ошибки [500 Internal server error]. Должен ли я попросить хостинговую компанию проверить что-нибудь? или есть другие предложения? – GENE

+0

Вы проверили все предварительные условия для asp.net 4? –

+0

afetr, связавшись с хостинговой компанией, я думаю, что все необходимые предпосылки DLL для .NET4 установлены! но проблема сохраняется! в любом случае спасибо за ваши ответы. – GENE

Смежные вопросы