Какие области web.config я могу безопасно удалить? - PullRequest
1 голос
/ 06 ноября 2008

Когда я начинаю новый веб-проект, я всегда немного беспокоюсь об удалении фрагментов файла web.config. Похоже, что в Net 3.5 SP1 больше записей, чем когда-либо.

Какие биты .config вы удаляете для следующих сценариев:

  • Веб-служба WCF, без поддержки Javascript
  • Простой веб-сайт MVC

EDIT Может ли кто-нибудь документировать основной список вещей, оставленных и взятых из web.config для простого веб-сайта?

Ответы [ 3 ]

4 голосов
/ 06 ноября 2008

Обычно я просто удаляю элементы из web.config до тех пор, пока все не сломается - процесс проб и ошибок.

Удивительно, сколько из web.config вы можете удалить, не затрагивая ничего. В .NET 3.5 он стал довольно грубым.

1 голос
/ 06 ноября 2008

В целом согласен с Джеффом, что это процесс проб и ошибок в отношении того, что вы можете удалить из файла.

С точки зрения настройки времени выполнения и конвейера http, часто это может быть процесс добавления чего-либо в файл web.config для его отключения.

Стандартная конфигурация добавляет в конвейер множество модулей, в зависимости от того, что вы делаете, вам может не понадобиться половина из них.

Наткнулся на несколько статей на эту тему в MSDN, а также на эту статью http://www.codeproject.com/KB/aspnet/10ASPNetPerformance.aspx, от Омара из PageFlakes, которая была единственной, которую я мог найти в моих (плохо организованных) закладках, что является хорошим началом указать на оптимизацию времени выполнения.

0 голосов
/ 03 февраля 2009

Вот урезанный Web.config, который я использую для простого сервиса 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>

Я удалил много дополнений, особенно скриптовые модули, которые мне не потребуются

...