web.config customHeaders kullanarak IIS’de ASP.NET X-Powered-By üstbilgisini kaldıralım.
IIS varsayılan olarak X-Powered-By başlığında ASP.NET bilgisini tutar.
HTTP/1.1 200 OK Content-Length: 0 Content-Type: text/html; charset=UTF-8 Vary: Accept-Encoding Server: X-Powered-By: ASP.NET X-UA-Compatible: IE=Edge,chrome=1 Date: Sun, 06 Jul 2021 10:07:37 GMT Connection: close
Bu yanıt başlığı, web.config’de aralığına yerleştirilmiş bir customHeaders ayarıyla kaldırılabilir:
<httpProtocol> <customHeaders> <remove name="X-Powered-By" /> </customHeaders> </httpProtocol>
Artık X-Powered-By başlığı, yanıt başlığı çıktısından kaldırılmıştır.
HTTP/1.1 200 OK Content-Length: 0 Content-Type: text/html; charset=UTF-8 Vary: Accept-Encoding Server: X-UA-Compatible: IE=Edge,chrome=1 Date: Sun, 06 Jul 2021 10:10:02 GMT Connection: close
X-AspNet-Version header
X-AspNet-Version HTTP Başlığı, ASP.NET’in hangi sürümünün kullanıldığını yayınlar. Aşağıdaki içeriği uygulamanızın web.config dosyasındaki aralığına ekleyelim,
<httpRuntime enableVersionHeader="false" />
IIS 10.0’da removeServerHeader requestFiltering
IIS 10.0’da (Windows Server 2016/2019), web.config system.webServer düğümünüzde requestFiltering’i yapılandırarak Sunucu başlığını kaldırabilirsiniz:
<security> <requestFiltering removeServerHeader ="true" /> </security>
ya da IIS Manager üzerinden Configuration Editör aracılığıyla yapılabilir.
IIS Configuration Manager requestFiltering seçeneği altında removeServerHeader öğesini True olarak ayarlayın.
Bu şekilde, komplex giden yeniden yazma kurallarıyla uğraşmak zorunda kalmazsınız. ASP.NET’in X-Powered-By başlığını kaldırmak için yukarıda bahsedildiği gibi yine customHeaders bölümüne ihtiyafcımız var.