Chaque page d'une application MVC avec laquelle je travaille définit ces en-têtes HTTP dans les réponses:
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
X-AspNetMvc-Version: 2.0
Comment est-ce que je les empêche de montrer?
Chaque page d'une application MVC avec laquelle je travaille définit ces en-têtes HTTP dans les réponses:
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
X-AspNetMvc-Version: 2.0
Comment est-ce que je les empêche de montrer?
Le "powered by" est un en-tête personnalisé dans IIS. Changer cela dépend de la version de IIS que vous utilisez. Pour des informations sur la façon de modifier ou de supprimer, voir ici:
http://www.iis.net/ConfigReference/system.webServer/httpProtocol/customHeaders
Pour supprimer le MVC en-tête,
Mondiale.asax, dans l'Application de Début de l'événement:
MvcHandler.DisableMvcResponseHeader = true;
Mettez-le en web.config de se débarrasser de la X-AspNet-Version d'en-tête:
<system.web>
<httpRuntime enableVersionHeader="false" />
</system.web>
Vous pouvez également les supprimer en ajoutant du code à votre fichier global.asax:
protected void Application_PreSendRequestHeaders(object sender, EventArgs e)
{
HttpContext.Current.Response.Headers.Remove("X-Powered-By");
HttpContext.Current.Response.Headers.Remove("X-AspNet-Version");
HttpContext.Current.Response.Headers.Remove("X-AspNetMvc-Version");
HttpContext.Current.Response.Headers.Remove("Server");
}
J'ai trouvé cette configuration dans mon web.config
qui a New Web Site...
créé dans Visual Studio (par opposition à un New Project...
). Depuis que la question des états d'un ASP.NET application MVC, pas comme pertinents, mais encore une option.
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<remove name="X-Powered-By" />
</customHeaders>
</httpProtocol>
</system.webServer>
Mise à jour: Aussi, Troy Hunt a un article intitulé Chut... ne laissez pas vos en-têtes de réponse de parler trop fort avec les étapes détaillées sur la suppression de ces en-têtes ainsi qu'un lien vers son ASafaWeb outil d'analyse pour eux et d'autres configurations de sécurité.
Comme décrit dans la Dissimulation de votre ASP.NET MVC de l'Application Web sur IIS 7, vous pouvez désactiver les X-AspNet-Version en-tête de l'application de la suivante à la section de configuration de votre site web.config:
<system.web>
<httpRuntime enableVersionHeader="false"/>
</system.web>
et supprimer le X-AspNetMvc-Version-tête en modifiant votre Global.asax.cs comme suit:
protected void Application_Start()
{
MvcHandler.DisableMvcResponseHeader = true;
}
Comme décrit dans les en-Têtes Personnalisés , Vous pouvez supprimer le "X-Powered-By" en-tête de l'application de la suivante à la section de configuration de votre site web.config:
<httpProtocol>
<customHeaders>
<clear />
</customHeaders>
</httpProtocol>
Il n'y a pas de moyen facile de supprimer le "Serveur" en-tête de réponse via la configuration, mais vous pouvez mettre en œuvre un HttpModule
pour supprimer des en-Têtes HTTP, comme décrit dans la Dissimulation de votre ASP.NET MVC de l'Application Web sur IIS 7 et dans how-to-remove-server-x-aspnet-version-x-aspnetmvc-version-and-x-powered-by-from-the-response-header-in-iis7.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.