2

私は、サーバー上の問題を引き起こしているアクセスのいくつかの種類を取得しています:nginxのブロックのUser-Agent「 - 」

172.68.28.210 - - [03/Jul/2016:13:41:06 -0300] " "GET/HTTP/1.1" 502 166 "-" "-" 

私もの$ HTTP_USER_AGENTを阻止したいと思いますが、この試みがうまくいかなかった作られました。

if ($http_user_agent = "-") { 
     return 403; 
    } 

誰かが間違っていることを知っていますか?

+0

502は、内部サーバーエラーを意味します。リクエストを他のものに代理していますか? NGINXの設定を投稿してもらえますか? –

答えて

1

$http_user_agentの変数は、コンテキストによって異なる値を持つ可能性があるためです。

ヘッダーが要求に含まれていない場合は、it'll present itself as - in your access_logですが、if文ではまだ空白になっています。

したがって、おそらく次はあなたの代わりに何をしたいです:

if ($http_user_agent = "") { 
    return 403; 
} 
+0

@Marcos、これはあなたのために働いたのですか?はいの場合は、受け入れてupvoteを忘れないでください。ありがとう! – cnst

関連する問題