Nginx 複雑な正規表現をmapでいい感じにする
Nginxで複雑な正規表現を使ってifdirective使ってリクエストをハンドリングしたい BotをUserAgentの正規表現からいい感じに判断して503とかかえ
これが
code:nginx.conf
server {
if ($http_user_agent ~ ISUCONbot) {
return 503;
}
return 503;
}
...
}
map directiveを使うとこんな感じにかける
code:nginx.con
map $http_user_agent $bot {
default 0;
"~ISUCONbot" 1;
...
}
server {
if ($bot = 1) {
return 503;
}
}