.Net 修改 Header 中的 Server 資訊 (網頁優化) .Net 修改 Header 中的 Server 資訊 (網頁優化)
  .NET       ez      2012-08-24

HTTP Header 中可以發現有 Server 資訊,但是假如該版本 Server 含有漏洞,就很容易被駭客鎖定,所以就必須將 Server 資訊藏起來會較為安全。

可以利用 IHttpModule 即可達到效果。

打開 web.config 進行編輯,在 <system.webServer> 下的 <modules> 裡加入以下:

<add name="CustomHeaderModule" type="專案名稱.CustomHeaderModule" />

以上名稱 CustomHeaderModule 可以自行更換。

網站目錄下新增一個類別檔案,名稱為 CustomHeaderModule.cs 程式碼如下:

using System;
using System.Web;
namespace XXX
{
    public class CustomHeaderModule : IHttpModule
    {
        public void Init(HttpApplication context)
        {
            context.PreSendRequestHeaders += OnPreSendRequestHeaders;
        }
        public void Dispose() { }
        void OnPreSendRequestHeaders(object sender, EventArgs e)
        {
            HttpContext.Current.Response.Headers.Remove("Server");
            HttpContext.Current.Response.Headers.Set("Server", "CSCWORM Web Server v1.0");
        }
    }
}

查看 Header 可以發現已經修改成功。


標籤:   .NET

我要留言