Existe-t-il un moyen de dire à IIS/ASP.NET de ne pas autoriser Keep-Alive pour certaines demandes? Ou même pour un site Web entier, si c'est vraiment la seule façon de s'y prendre?Comment désactiver HTTP Keep-Alive dans ASP.NET MVC?
Répondre
Assez sûr que cela ne peut pas être fait au niveau de la demande. Dans IIS 6.0, it was exposed in a tab of IIS properties. Dans IIS 7, ils sont de type hid it.
HTTP Les persistants sont activés par défaut dans IIS 6.0, ce qui est conforme à la spécification HTTP/1.1 pour HTTP Keep-Alives. IIS maintient ouverte une connexion inactive tant que la propriété de métabase ConnectionTimeout spécifie (la valeur par défaut est 120 secondes).
Vous pouvez désactiver HTTP Keep Alive en suivant le lien ci-dessous, c'est pour l'activation que vous auriez à faire inverse pour désactiver.
Si vous voulez vraiment faire cela, adaptez le IHttpModule à this answer appeler Response.Close dans le gestionnaire HttpApplication.EndRequest.
Pour l'ensemble du site, en utilisant IIS 7 ....
<configuration>
<system.webServer>
<httpProtocol allowKeepAlive="false" />
</system.webServer>
</configuration>
PS.
Je réalise que cette question concerne uniquement la désactivation de la fonctionnalité. Cependant, j'ai pensé que cela valait la peine de mentionner que la désactivation de KeepAlive était un reflet du problème que j'essayais de résoudre. J'ai eu un problème où un POST jQuery Ajax ne parviendrait pas à envoyer du contenu du corps au serveur. Bien que l'activation/désactivation de KeepAlive ait semblé affecter la quantité de reproductions de mon problème, le correctif réel était la désactivation de l'authentification Windows à la racine du site. Cela est dû au fait que le navigateur (dans les coulisses) envoie une demande pour favicon.ico à la racine du site (même en dehors du dossier de votre application) et si Windows Auth est activé à ce niveau, la négociation NTLM Authenticate commence, et (en termes techniques), tout va bien. J'ai donc fini par supprimer cette ligne de mon fichier de configuration pour qu'elle fonctionne par défaut, avec KeepAlive activé ... ce qui est supposé être meilleur pour la performance.
- 1. ASP.Net: exécution de code Keepalive
- 2. ASP.NET MVC - HTTP Post
- 3. Comment désactiver le routage d'URL ASP.NET MVC
- 4. asp.net MVC: désactiver un TextBox
- 5. Intercepter HTTP dans ASP.Net MVC 2
- 6. Comment désactiver la sécurité pour une action dans ASP.NET MVC?
- 7. désactiver et sélectionner asp.net mvc Html.RadioButtonFor
- 8. asp.net mvc désactiver la zone de liste
- 9. comment définir des httpheaders dans asp.net mvc
- 10. Comment désactiver MVC htmlAttribute
- 11. Comment désactiver ControlState dans ASP.NET?
- 12. 404 Gestionnaire d'erreurs Http dans Asp.Net MVC (RC 5)
- 13. ASP.NET MVC: En-têtes OutputCache et http
- 14. Comment spécifier l'en-tête d'expiration HTTP? (ASP.NET MVC + IIS)
- 15. ASP.NET MVC: Comment désactiver automatiquement [RequireHttps] sur localhost?
- 16. MOSS 2007 KeepAlive fichier
- 17. Déplacement entre HTTP et HTTPS dans ASP.NET MVC
- 18. Comment l'en-tête HTTP KeepAlive devrait-il ressembler à un sniffer?
- 19. richfaces keepAlive ne fonctionne pas
- 20. désactiver dimanche dans asp.net calendrier
- 21. ASP.Net: Comment désactiver un ListItem?
- 22. Comment consommer un webservice HTTP dans Asp.net?
- 23. désactiver un formulaire dans asp.net
- 24. routage dans asp.net mvc
- 25. Spring MVC: désactiver DefaultAnnotationHandlerMapping
- 26. Silverlight, Grids, MVC, HTTP Post
- 27. équivalent Page.EnableSessionState dans ASP.NET MVC
- 28. Comment désactiver ASP.net AJAX Framework dans ASP.net 3.5
- 29. IIS/ASP.NET utilise-t-il l'option TCP keepalive? (cette question ne concerne pas le HTTP Keep-Alive)
- 30. ASP.NET (MVC) Obtenez nom d'utilisateur URL http: //[email protected]