响应中的aspnet头文件的优点是什么?

问题描述:

我今天分析了应用程序的响应标题。我不知道为什么还是出于什么目的下的定义是有用:响应中的aspnet头文件的优点是什么?

服务器:Microsoft-IIS/10.0
X-ASPNET版本:4.0.30319
X-aspnetmvc版本:5.2
X-powered-通过:ASP.NET

我想有一个特殊的原因为什么这是默认发送?我知道你可以关闭它。

我的猜测是由框架开发人员主要为“广告”目的完成的。关于Kestrel框架,请参阅this问题(通常由asp.net核心使用)。在该问题中添加“服务器”标题的原因是:

这是TechEmpower基准测试所要求的。

开发人员希望他们的框架在流行的Web框架基准测试网站上列出,以便他们添加Server标头。也有一些网站基于这些头文件来衡量Web框架的流行度。如果没有“X-Powered-By”头文件,这些站点不会知道你使用的是ASP.NET,所以它看起来好像世界上没有人使用ASP.NET,这可能会影响它的流行度(你会发现没有人使用它 - 所以你不会自己开始使用它)。如果nginx没有添加服务器标头 - 它不会是世界上最流行的Web服务器(或者说 - 你不知道它是否是)。使用版本头文件可能会收集有关用户切换到某些流行框架版本的速度的统计信息。如您所见 - 这些头文件主要对框架开发人员和全球统计数据有价值,并且因为他们还引入了较小的信息泄漏 - 您应该将它们从应用程序中删除,因为应用程序的安全性应该具有更大的价值(对于您)比框架开发者的广告目标要好。