- Nginx は if の中で使えないディレクティブがある
- error_page と組み合わせる
- error_page で実行する location 内で include したり、認証設定を書く
- error_page と組み合わせる
以下の設定は error
if ($geo = 0) {
include /path/to/conf;
}| geo $geo { | |
| default 0; | |
| 127.0.0.1/32 1; | |
| } | |
| location / { | |
| error_page 418 = @auth_required; | |
| recursive_error_pages on; | |
| if ($geo = 0) { | |
| return 418; | |
| } | |
| proxy_pass http://127.0.0.1; | |
| } | |
| location @auth_required { | |
| include /path/to/conf; | |
| proxy_pass http://127.0.0.1; | |
| } |