Python CGIプログラミングで頻繁に使われる重要なHTTPヘッダーとは?
HTTPヘッダーとは
CGIプログラミングでは、Content-type:text/html\r\n\r\n のような行がHTTPヘッダーの一部としてブラウザへ送信されます。ブラウザはこのヘッダーを受け取ることで、返されてきたコンテンツの種類や扱い方を正しく理解できるのです。
すべてのHTTPヘッダーは、次の基本形式に従って記述されます。
HTTPフィールド名 − フィールドの内容
記述例
Content-type − text/html\r\n\r\n
CGIプログラミングで頻繁に使われる主要なHTTPヘッダー
上記のContent-type以外にも、PythonによるCGI開発では頻繁に利用される重要なHTTPヘッダーがいくつか存在します。それぞれの役割を理解しておくと、動的なWebページの生成や制御が格段に行いやすくなります。
| No. | ヘッダー名 | 説明 |
| 1 | Content-type: | 返却するファイルの形式(フォーマット)を定義するMIME文字列です。例:Content-type:text/html |
| 2 | Expires: Date | 情報が無効となる日付を指定します。ブラウザはこの値をもとに、ページをいつ再読み込み(更新)すべきかを判断します。有効な日付文字列の形式は「01 Jan 1998 12:00:00 GMT」のようになります。 |
| 3 | Location: URL | リクエストされたURLの代わりに返すURLを指定します。このフィールドを利用することで、リクエストを任意のファイルへリダイレクトできます。 |
| 4 | Last-modified: Date | リソースが最後に更新された日付を示します。キャッシュ制御などにも活用されます。 |
| 5 | Content-length: N | 返却されるデータの長さをバイト単位で指定します。ブラウザはこの値を参照して、ファイルの推定ダウンロード時間をユーザーに表示します。 |
| 6 | Set-Cookie: String | 文字列として渡された内容をもとに、Cookieを設定します。セッション管理などでよく使われます。 |
これらのヘッダーを適切に組み合わせて出力することで、コンテンツタイプの指定、ページの有効期限管理、リダイレクト処理、Cookieの発行など、CGIプログラムに必要なさまざまな制御を実現できます。
-
Webプログラミングで必ず押さえたい主要なHTTPレスポンスヘッダー14選
Webサーバーからブラウザへ返されるHTTP 1.1レスポンスヘッダーのうち、Webプログラミングで特に役立つものを以下にまとめました。これらのヘッダーは日常的な開発で頻繁に登場するため、それぞれの役割を正しく理解しておくことが重要です。主要なHTTPレスポンスヘッダー一覧No.ヘッダー名と説明1Allowサーバーがサポートしているリクエストメソッド(GET、POSTなど)を指定します。2Cache-Controlレスポンスドキュメントをどのような条件で安全にキャッシュできるかを指定します。public(キャッシュ可能)、private(単一ユーザー向けで非共有のプライベートキャッシュにのみ保
-
PythonのCGIとは?仕組みとサーバー設定方法をわかりやすく解説
CGI(Common Gateway Interface:共通ゲートウェイインターフェース)は、HTTPサーバーなどの情報サーバーと外部のゲートウェイプログラムがやり取りするための標準規格です。現在のバージョンはCGI/1.1であり、CGI/1.2が策定中です。Webブラウジングの流れCGIの概念を理解するために、ハイパーリンクをクリックして特定のWebページやURLを閲覧するときに何が起こるのかを見てみましょう。ブラウザがHTTP Webサーバーに接続し、URL(つまりファイル名)を要求します。WebサーバーはURLを解析してファイル名を探します。該当するファイルが見つかればそれをブラウザへ