1

httpについて正しく学び始めています。

私はランプスタックで働いています。

コマンドラインで、返されるヘッダーを確認するためにApacheで提供されるローカルページをリクエストしています。

curl -i local.testsite

リクエストしているページにはコンテンツがなく、ヘッダーを設定していませんが、次のような応答で既に多くのヘッダーが送信されています。

HTTP/1.1 200 OK
Date: Thu, 17 Jan 2013 20:28:52 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.3.10-1ubuntu3.4
Vary: Accept-Encoding
Content-Length: 0
Content-Type: text/html

これらを設定していない場合、apache はこれらを自動的に設定しますか?

4

2 に答える 2

3

一部はPHPによって設定されます。

  • X-Powered-ByヘッダーはINI設定によって設定されますexpose_php
  • Content-TypeヘッダーはINI設定によって設定されますdefault_mimetype

その他はApacheによって設定されます。

  • ServerヘッダーはServerSignatureディレクティブによって設定されます。
  • Vary: Accept-Encodingヘッダーは通常、が有効になっているときに送信されますmod_deflate

DateこれらはHTTP仕様の一部でContent-Lengthあるため、構成できません。DateMUST(一部の条件下を除く)およびContent-Length SHOULDとして含まれています。

apacheから日付ヘッダーを削除する方法も参照してください。およびApacheでContent-Length応答ヘッダーを無効にする方法は?

于 2013-01-17T20:32:44.680 に答える
3

はい、Apacheはデフォルトでそれらを設定しています。ちなみに、ヘッダーだけを気にするなら、

curl -I local.testsite

-Iヘッダーのみを返します(HTTP HEADリクエスト)。そのため、ページにコンテンツがある場合でも、ヘッダーのみを取得します。

于 2013-01-17T20:33:14.670 に答える