Freigeben über


deployment retail="true" pour ASP.NET

Ce n’est pas une information de première fraicheur :-) mais compte tenu qu’elle n’est pas très documentée, je la relaie dans cet article.

Depuis ASP.NET 2.0, nous avons l’élément <deployment> dans <system.web> qui permet de définir à un seul endroit (Machine.config) si les applications ASP.NET présentes sur le serveurs sont en production :

<configuration>

<system.web>

<deployment retail="true"/>

</system.web>

</configuration>

Ce paramétrage a deux effets :

  • Rétablir les performances optimales d’ASP.NET (Compilation, cache des ressources AXD, gestion mémoire, timeouts des pages) qui étaient réduites par le mode debug
  • Et purement et simplement désactiver le débogage, la trace ASP.NET et les messages d’erreurs ASP.NET complets

Ceci quelque soient les paramétrages mis dans les Web.config.

 

Je vous conseille d’appliquer ce paramétrage systématiquement dans la production.

Et justement, par curiosité, avez-vous testé de rechercher si vous aviez du debug="true" sur vos serveurs ?

findstr /S " debug=" *.*

 

findstrA

 

 

A bientôt,

Sebastien,

-

deployment Element - https://msdn.microsoft.com/en-us/library/ms228298.aspx

When retail is set to true, ASP.NET disables certain configuration settings such as trace output, custom errors, and debug capabilities.

Don’t run production ASP.NET Applications with debug=”true” enabled - https://weblogs.asp.net/scottgu/archive/2006/04/11/Don_1920_t-run-production-ASP.NET-Applications-with-debug_3D001D20_true_1D20_-enabled.aspx

Comments

  • Anonymous
    January 18, 2013
    Commande plus rapide pour detecter des debug="true" résiduels: findstr /S " debug=""true""" *.config