HTTPリクエストのヘッダには、なぜX-Powered-byという値がある場合があり、ない場合があるのでしょうか?


x-powered-byは、ApacheまたはNginxが出力するのではなく、言語解析器またはアプリケーションフレームワークによって出力されます.この値の意味は、Webサイトがどの言語またはフレームワークで作成されているかを通知するために使用されます.例:
  • php

  • PHP標準出力:X-Powered-by:PHP/5.2.1,php.iniではexpose_php = Offを追加または変更して閉じます.
  • thinkphp

  • ThinkPHPを使用すると、X-Powered-by:ThinkPHP 2.0が出力され、関連するクラスファイルを修正して閉じることができます
  • .net

  • 使用するNet出力:X-Powered-by:ASP.NET,修正可能web.config削除
    nginxコンパイル時にモジュール、HttpHeadersMoreを追加して、戻ってきたhttpヘッダを統一的に削除または変更することができます.
    重要な内容はまた、Webサーバ自体も自分のバージョン番号を吐き出すことがあります.http headerはサーバ:xxxxです.これは、特定のバージョンのWebサーバの脆弱性を利用して攻撃する人がいる場合があります.nginxはプロファイルにserver_tokens offを追加または変更してバージョン番号を削除することができます.