mod_rewrite モジュールについて5回でまとめています。
その1 リダイレクトの基本
その2 RewriteCond ディレクティブ
その3 様々なリダイレクト利用例
その4 HTTP 環境変数一覧 ← 今回
その5 RewriteRule のフラグ一覧
RewriteCond ディレクティブで利用する主な HTTP 環境変数の一覧です。
ヘッダ環境変数
環境変数 | 意味・値 |
---|---|
HTTP_HOST | リクエスト先のホスト名 (DNS 名) 情報 例)http://hazu.jp/~ でのアクセスなら、”hazu.jp” http://www.hazu.jp/~ のアクセスなら、”www.hazu.jp” |
HTTP_REFERER | 参照元の URL 情報(前にいたページのURL情報) 例)Google での検索からのアクセスなら、”https://www.google.com” |
HTTP_ACCEPT | ブラウザがサポートするメディア・MIMEタイプ情報 例)”text/html,application/xhtml+xml,application/xml;q=0.9″ |
HTTP_USER_AGENT | クライアントのプラットフォーム、バージョン情報、ブラウザの情報 例)”Mozilla/5.0 (Windows NT 10.0; Win64; x64) Chrome/77.0.3865.90″ |
サーバ環境変数
環境変数 | 意味・値 |
---|---|
SERVER_NAME | Webサーバ名の情報 例)”hazu.jp” |
SERVER_ADDR | Web サーバの IP アドレス情報 例)”10.20.30.40:80″ |
SERVER_PORT | Webサーバのポート番号の情報 例)一般的には、http ならポート番号 “80”、https ならポート番号 “443” |
リクエスト環境変数
環境変数 | 意味・値 |
---|---|
REMOTE_ADDR | クライアントの IP アドレス情報 例)”10.20.30.40:80″ |
REMOTE_HOST | クライアントのホスト名情報(必ず含まれているとは限らない) 例)”www.client123.hoge.com” |
REMOTE_USER | Basic 認証におけるユーザ認証時のユーザ ID 情報 |
SCRIPT_FILENAME | 実行するスクリプトの絶対パス情報 例)example.php を実行する場合、その絶対パス “hazu.jp/home/example.php” |
PATH_INFO | ファイル名とクエリー文字列の間にあるパス情報 例)”example.php/foo/bar?id=123456″ にアクセスなら、”/foo/bar” |
QUERY_STRING | クエリー文字列である GET パラメータの情報 例)”example.php/foo/bar?id=123456″ にアクセスなら、”id=123456″ |
サーバー日付・時刻変数
環境変数 | 意味・値 |
---|---|
TIME_YEAR | サーバ時刻の年 例)”2019″ 西暦で表示 |
TIME_MON | サーバ時刻の月 “01” ~ “12” |
TIME_DAY | サーバ時刻の日 “01” ~ “31” |
TIME_HOUR | サーバ時刻の時 “00” ~ “23” |
TIME_MIN | サーバ時刻の分 “00” ~ “59” |
TIME_SEC | サーバ時刻の秒 “00” ~ “59” |
TIME_WDAY | サーバ時刻の曜日 “0” (日曜) ~ “6” (土曜) |
TIME | サーバ時刻の年・月・日・時・分・秒 例)2019年10月11日、23:35:07なら、”20191011234507″ |
その他
環境変数 | 意味・値 |
---|---|
THE_REQUEST | リクエストの情報(クライアントのブラウザから送られてきた HTTP リクエスト行) 例)index.html に HTTP ver1.1 でリクエストの場合、”GET /index.html HTTP/1.1″ |
REQUEST_URI | リクエストされたURI情報 例)http://hazu.jp/foo/bar.html にアクセスされた場合は “/foo/bar.html” |
REQUEST_FILENAME | リクエストされたファイルのサーバパス情報 例)”/home/blog/example.html” |
HTTPS | https (SSL) 判定 https 通信なら “on”、そうでなければ “off” |