第7章 HTTP
教科書「プログラミングPHP 第2版」
上級試験は、オライリーから出版されているプログラミングPHP 第2版を教科書に出題されます。
基礎
- webサーバーと通信するときに用いるプロトコル
- GET /index.html HTTP/1.1のようなリクエストを送信する
- ブラウザ情報はUser-Agent、受け入れ可能なMIME typeはAccept
- サーバーはHTTP/1.1 200 OK のような応答を返す
- ヘッダー(レスポンスコードやサーバー情報等)の後、空白一行、データ(HTML等)
- HTTPのメソッド、GETとPOST
- アドレスバーにURLを入力した場合や、リンクをクリックした場合はGET。フォーム送信の場合は、GETまたはPOST(フォームの設定による)。
変数
- EGPCS(環境、GET、POST、クッキー、サーバー)
- register_globalsはオフにする
- $_COOKIE, $_GET, $_POST, $_FILES, $_SERVER, $_ENV。さらにこれらをまとめた$_REQUEST
- $_SERVERには、サーバー情報が格納されている。
SERVER_SOFTWARE サーバーを一意識別する文字列
SERVER_NAME ホスト名
GATEWAY_INTERFACE CGIバージョン
SERVER_PROTOCOL プロトコル名とバージョン
REQUEST_METHOD アクセス時にクライアントが使用したメソッド
PATH_INFO クライアントが提供するバス情報
PATH_TRANSLATED PATH_INFOをサーバー上のパスに読み替えたもの
SCRIPT_NAME 現在のページのパス
QUERY_STRING URLの?以降の部分
REMOTE_HOST アクセスしたホスト名
REMOTE_ADDR アクセス元のIPアドレス
AUTH_TYPE パスワード保護されているときの認証メソッド
REMOTE_USER パスワード保護されているとき、認証に用いられたユーザー名
REMOTE_IDENT identdを使用しているときのユーザー名
CONTENT_TYPE クエリに付加されるコンテンツタイプ
CONTENT_LENGTH 情報の長さ - Apacheサーバーも$_SERVERを作成する。キー名を大文字に変換、ハイフンをアンダーバーに変換、語頭にHTTP_を付加する。
※原書を元にしています。日本語訳本とは用語等が異なる可能性があります。
Copyright (C) 2003-2018. PHP で WEB 作成 All rights reserved.