Hi @浩铨 林,
Thanks for sharing your details!
I checked it, and here’s the simple reason the IIS version is still showing:
Even though you told IIS to hide the “Server” header, your app is running in “in‑process” mode, so ASP.NET Core adds its own Server header. IIS cannot remove that one.
Reference: In-process hosting with IIS and ASP.NET Core
I would recommend you try these steps out:
- Keep your current setting
removeServerHeader="true"is correct for IIS 10.0. It hides IIS’s own Server header. Reference: Request Filtering <requestFiltering> - Turn off the Server header inside ASP.NET Core Add this line in your
Program.cs:
This stops Kestrel (ASP.NET Core) from adding its Server header.builder.WebHost.ConfigureKestrel(o => o.AddServerHeader = false);
Note: You can change the "/en-us/" in the reference URL into "/zh-cn/" to change language.
Hope this helps! If you have any questions, please feel free to comment below. I'll be happy to assist!