4.10 ヘッダカスタマイズ機能

HTTP通信では,WebブラウザとWebサーバの間でさまざまなHTTPヘッダが用いられます。WebブラウザおよびWebサーバは,受信したHTTPヘッダから,その後の動作を決定する場合があります。WebブラウザがHTTPリクエストの送信時に付加するHTTPヘッダをリクエストヘッダ,Webサーバが応答時に付加するHTTPヘッダをレスポンスヘッダといいます。Webサーバが受信したリクエストヘッダや送信するレスポンスヘッダを追加,変更または削除して,WebサーバまたはWebブラウザに特定の動作をさせるための機能をヘッダカスタマイズ機能といいます。

HTTP Serverにmod_headersモジュールを組み込むことで,ヘッダカスタマイズ機能を使用できます。

<この節の構成>
(1) mod_headersモジュールの組み込み
(2) ディレクティブの設定方法
(3) 注意事項

(1) mod_headersモジュールの組み込み

ヘッダカスタマイズ機能を使用するためにはmod_headersモジュールの組み込みが必要です。mod_headersモジュールを組み込むには,コンフィグファイル(httpsd.conf)に次に示すディレクティブを指定します。

(2) ディレクティブの設定方法

ヘッダカスタマイズ機能は,HeaderディレクティブおよびRequestHeaderディレクティブで指定します。ヘッダカスタマイズ機能を使用するための,ディレクティブの設定例を次に示します。

(a) レスポンスヘッダを設定する場合

Headerディレクティブのset指示子によって,レスポンスヘッダを設定できます。ほかのモジュールですでに同じ名前のレスポンスヘッダが設定されている場合は,ヘッダ値を上書きします。

レスポンスヘッダにExpires: Sat, 1 Jan 2000 00:00:00 GMTを設定する例を次に示します。ただし,有効期限を動的に設定する場合は,有効期限設定機能を使用してください。

Header set Expires "Sat, 1 Jan 2000 00:00:00 GMT"

(b) レスポンスヘッダを追加する場合

Headerディレクティブのadd指示子によって,レスポンスヘッダを追加できます。ほかのモジュールですでに同じ名前のレスポンスヘッダが設定されていても,別のヘッダとして設定されます。同じ名前のレスポンスヘッダを複数行設定する場合に使用します。

レスポンスヘッダにSet-Cookie: HOSTNAME=HOST1; path=/; domain=www.example.com; secureを追加する例を次に示します。

Header add Set-Cookie "HOSTNAME=HOST1; path=/; domain=www.example.com; secure"

(3) 注意事項