2013-07-16 11 views
6

nuovi a questo sito in modo che io terrò breve:Consenti solo un utente-agente, blocca il resto in nginx?

ho attualmente:

if ($http_user_agent ~* (A-certain-self-made-User-Agent-here)) { 
      return 200; 
    } 

che funziona molto bene. (Testato passando da 200 a 403).

La mia domanda è: C'è un modo in:/etc/nginx/sites-enabled/default per renderlo consentire solo ONE User-Agent e negare il resto?

So che questo sembra stupido, ma è qualcosa che mi piacerebbe aver fatto, (se possibile). Come forse questo ?:

if (http_user_agent ~*(user-agent)) { 
      return 200; 
    else 
      return 403; 
    } 

risposta

0

si può provare quanto segue nella posizione corretta

set $isallowed = ""; 
if ($http_user_agent = allowed_user_agent) { 
    set $isallowed "${isallowed}YES"; 
} 

if ($isallowed !~ YES) { 
    rewrite^http://yourserver.com permanent; 
} 
4
if ($http_user_agent !~* "A-certain-self-made-User-Agent-here") { 
    return 403; 
} 

sta lavorando al mio sito.

+0

Questo funziona perfettamente. Grazie! – xxdesmus

Problemi correlati