2008-11-06 6 views
1

Lorsque je commence un nouveau projet web, je suis toujours un peu inquiet à propos de la suppression de morceaux de web.config. Il semble qu'il y ait plus d'entrées que jamais avec Net 3.5 SP1.Quels domaines du web.config puis-je supprimer en toute sécurité?

Quels bits du .config ne vous supprimez les scénarios suivants:

  • WCF service Web, pas de support Javascript
  • Site simple MVC

EDIT documenterez quelqu'un a base liste des choses laissées et retirées du web.config pour un simple site web?

Répondre

0

Voici un démonté web.config-je utiliser pour un simple service WCF

<?xml version="1.0"?> 
<configuration> 
    <system.web> 
     <compilation debug="true"> 
      <assemblies> 
      <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
      </assemblies> 
     </compilation> 
     <authentication mode="Windows" /> 
     <customErrors mode="RemoteOnly" defaultRedirect="error.htm"> 
      <error statusCode="403" redirect="NoAccess.htm" /> 
      <error statusCode="404" redirect="FileNotFound.htm" /> 
     </customErrors> 
    </system.web> 
    <system.codedom> 
     <compilers> 
     <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" 
        type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> 
      <providerOption name="CompilerVersion" value="v3.5"/> 
      <providerOption name="WarnAsError" value="false"/> 
     </compiler> 
     </compilers> 
    </system.codedom> 
    <system.serviceModel> 
    <services> 
     <service behaviorConfiguration="Service.ServiceBehavior" name="Service.Service"> 
     <endpoint address="" binding="basicHttpBinding" contract="Service.IService"> 
      <identity> 
      <dns value="localhost" /> 
      </identity> 
     </endpoint> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="Service.ServiceBehavior"> 
      <serviceMetadata httpGetEnabled="true"/> 
      <serviceDebug includeExceptionDetailInFaults="false"/> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    </system.serviceModel> 
</configuration> 

J'ai retiré beaucoup d'extras en particulier les modules de script que je ne nécessitera pas

4

Je supprime généralement les éléments du fichier web.config jusqu'à ce que les choses se cassent - un processus d'essais et d'erreurs.

Il est étonnant de savoir combien de web.config vous pouvez supprimer sans affecter quoi que ce soit. Il est devenu assez crufty dans .NET 3.5.

+0

Surtout dans mon hôte WCF applications Web dans IIS7, les fichiers web.config sont dépourvus de tous les cryptages standard. – cfeduke

1

Êtes-vous plutôt d'accord avec Jeff que c'est un processus d'essais et d'erreurs sur ce que vous pouvez supprimer du fichier.

En termes de peaufinage du runtime et du pipeline http, il peut souvent s'agir d'un processus d'ajout de choses au web.config, afin d'éteindre les choses. La configuration prête à l'emploi ajoute beaucoup de modules au pipeline, en fonction de ce que vous faites, vous pouvez ne pas en avoir besoin de la moitié.

J'ai trouvé quelques articles à ce sujet sur MSDN, et aussi celui-ci http://www.codeproject.com/KB/aspnet/10ASPNetPerformance.aspx, par Omar de PageFlakes, qui était le seul que j'ai pu trouver dans mes signets (mal organisés), ce qui est un bon point de départ pour optimiser l'exécution.

Questions connexes