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で分岐したあとに書き換えられるのが特徴だったかな?(うろ覚え)
コメント