[PHP] CGIに渡すREQUEST_URIを書き換える

  • このエントリーをはてなブックマークに追加

Nginxの設定において、実際にリクエストされたURLを書き換えて、CGIで使うサーバ変数のREQUEST_URIに渡したい時があったのでメモ。

if ($request_uri ~* ^/path/to/url/(.*)$) {
    set $uri_for_cgi "/$1";
}

fastcgi_param REQUEST_URI $uri_for_cgi;

こうすると /path/to/url/hoge というURLでアクセスした場合、PHPなんかだと $_SERVER['REQUEST_URI'] に /hogeが入るわけです。
rewriteと違ってlocationで分岐したあとに書き換えられるのが特徴だったかな?(うろ覚え)

  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。




コメントを残す