1
try_files
ディレクティブで404を返すには、いつも私のために失敗するように見える:try_files常に変数
...
root /images;
location /media {
set $do_resize $uri;
# if ?resize=blah query present, rewrites do_resize to small/$uri
if ($arg_resize != '') {
set $do_resize 'small/${do_resize}';
}
try_files $do_resize $do_resize/ @fallback;
}
# placeholder for image resize server
location @fallback {
add_header Content-Type text/html;
return 200 "not found :/";
}
マイフォルダ構造:
| images
| test.jpeg
| small
test.jpeg
http://foo/media/test.jpeg
に要求し、それが正しくイメージを返します。 http://foo/media/test.jpeg?resize=blah
を要求すると、404が見つかりません。 small
フォルダ内のtest.jpeg
イメージを返します。
try_files
にカスタム変数を使用することはできますか? 指令に$uri
が使用されている以外は何も見たことがありません。
時間を浪費!私はなぜ時々要求が奇妙に振る舞うのか、それ以外のときは奇妙に振る舞うのか、頭を悩ましてきました。それはまさにあなたが言及したリンクで説明されていることです:(したがって、 'try_files'指令に変数を使用することは完全に正当ですか?後で私がオフィスに戻ったときにこれを試してみるでしょう)thanks – borislemke
本当に可能であることを確認しましたカスタム変数で 'try_files'を使用する – borislemke