ASP.NET

C# .NET レスポンスヘッダーのサーバ情報やバージョン情報を非表示にする

プロジェクトを作成して普通に使っていると、レスポンスヘッダーに IIS や .NETのバージョン情報が表示されます。

これらを非表示にしたい。

 

Server: Microsoft-IIS/7.5 を非表示にする

Urlscan Filter のインストール

こちらを読んでから

URLScanをインストールしたらjQueryのプラグインが動かなくなった

IISのバージョン情報をレスポンスヘッダーに表示させないという設定(URLScan v3.1をインストール)をしたら、jQueryのプラグインが動かなくなりました。 IISのログを見ると C:\ine ...

以下から、Urlscan Filter をダウンロード。

Microsoft Urlscan Filter v3.1 (x64)

 

ダウンロードしたインストーラーを実行。

 

 

同意しますにチェックを入れて、インストールボタンをクリック。

 

 

インストールおわり。一瞬だった。

 

 

urlscan.ini ファイルの編集

以下のファイルを開きます。

C:\Windows\System32\inetsrv\urlscan\urlscan.ini

 

以下の部分を

RemoveServerHeader=0

以下のように変更。

RemoveServerHeader=1

「1」にするだけ。

 

一応、サービスからIISの再起動をしておく。

これで「Server: Microsoft-IIS/7.5」は晴れて非表示に。

 

X-AspNet-Version:xxx X-AspNetMvc-Version:xxx を非表示にする

web.configを編集

web.config の system.web の中に、以下のように追加。

<system.web>
    …
    <httpRuntime enableVersionHeader="false" />

web.configに httpRuntime は1つしか設定できないので、もし既に設定していたら、

同じタグの中に、enableVersionHeader="false" だけ追加すればOK。

 

Global.asax.csを編集

Global.asax.cs の Application_Start() の中に、以下を追加。

MvcHandler.DisableMvcResponseHeader = true;

 

 

X-Powered-By: ASP.NET を非表示にする

web.config を編集

web.config の system.webServer の中に、以下のように追加。

<system.webServer>
    …
    <httpProtocol>
        <customHeaders>
            <remove name="X-Powered-By" />
        </customHeaders>
    </httpProtocol>

 

 

対応後

表示されなくなりました。

-ASP.NET