mod_rewrite

mod_rewirte でURLを転送した時の$_SERVER変数がどのようになるかをメモ。

httpd.conf


RewriteEngine on
RewriteRule .* /a/a.php

a.php


<?
header("Content-Type: text/plain");
var_dump($_SERVER);
?>

ブラウザ

http://localhost/hoge/fuga/foo.html?a=b
にアクセスした結果(注目すべき項目だけ抽出)

SCRIPT_URL /hoge/fuga/hoge.html
SCRIPT_URI http://localhost/hoge/fuga/hoge.html
HTTP_HOST localhost
SERVER_NAME localhost
SCRIPT_FILENAME C:/Program Files/Apache Group/Apache2/htdocs/a/a.php
QUERY_STRING a=b
REQUEST_URI /hoge/fuga/hoge.html?a=b
SCRIPT_NAME /hoge/fuga/hoge.html
PHP_SELF /hoge/fuga/hoge.html
PATH_TRANSLATED C:/Program Files/Apache Group/Apache2/htdocs/a/a.php