.htaccessファイルで使用できる主要HTTP環境変数の一覧です。
HTTP環境変数の書式
.htaccessファイル内でHTTP環境変数は以下のように記述します。
- 【書式】
- %{環境変数名}
主要HTTP環境変数一覧
| 種類 | 環境変数名 | 意味 |
|---|---|---|
| ヘッダ 環境変数 | HTTP_USER_AGENT | ブラウザ情報(ブラウザの種類、OSの種類、バージョンなど) |
| HTTP_REFERER | 参照元情報(どこからアクセスされたか) | |
| HTTP_COOKIE | クッキー情報 | |
| HTTP_FORWARDED | プロキシサーバーの情報 | |
| HTTP_HOST | ホスト名(ドメイン名) | |
| HTTP_PROXY_CONNECTION | プロキシサーバー経由かどうか | |
| HTTP_ACCEPT | MIMEタイプ | |
| サーバー 環境変数 | DOCUMENT_ROOT | ドキュメントルートのパス |
| SERVER_ADMIN | サイト管理者情報 | |
| SERVER_NAME | サーバー名 | |
| SERVER_ADDR | サーバーのIPアドレス | |
| SERVER_PORT | サーバーのポート番号 | |
| SERVER_PROTOCOL | サーバープロトコル | |
| SERVER_SOFTWARE | サーバーソフトウェア名 (例)Apache/2.2.27 | |
| リクエスト 環境変数 | REMOTE_ADDR | ホストのIPアドレス |
| REMOTE_HOST | リモートホスト名(ドメイン) | |
| REMOTE_USER | Basic認証におけるユーザ名 | |
| REQUEST_METHOD | リクエストメソッド(GET/POST) | |
| SCRIPT_FILENAME | スクリプトの絶対パス情報 | |
| PATH_INFO | パス情報 (例)/dir/aa | |
| QUERY_STRING | クエリ文字列(GET文字列) ※URLの?より右側の文字列です | |
| AUTH_TYPE | ユーザの認証方式情報 | |
| REMOTE_PORT | クライアントのポート番号 | |
| システム 日付時刻変数 | 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 | システム日時(年月日時分秒) | |
| その他 | HTTPS | HTTPS通信かどうか ON:https通信 OFF:http通信 |
| IS_SUBREQ | サブリクエストを処理中かどうか TRUE:サブリクエストを処理中 FALSE:否 | |
| REQUEST_URI | リクエストURI (ドメイン以下のパス文字列) | |
| REQUEST_FILENAME | サーバーパス情報 | |
| API_VERSION | Webサーバプログラムのバージョン情報 | |
| THE_REQUEST | リクエストの情報 |
備考
- 上記一覧以外の環境変数もあります。

コメント
[…] [.htaccess] HTTP環境変数一覧 […]
[…] RewriteCondはこのようにして書くことで、もしそれが一致した場合は直後に置くRewriteRuleの条件の書き換えが行われるようになる。通常のRewriteRuleでは難しい条件の設定もこれを使えば簡単にアクセス制限の設定が可能になる。特定の場所からアクセスしてほしくない場合などにはこれを利用するといい。ちなみに、.htaccessの環境変数についてはここが詳細に内容が書かれている。いずれも%{環境変数名}の書式である。 […]