Welcome! Log In Create A New Profile

Advanced

location regex?

Jay Haines
August 03, 2022 08:42PM
I am trying to weed out requests for any uri that contains the string,
"announce" (no quotes). That would include

* /announce
* /announce/
* /announce.php

each with or without query strings. I have the following location blocks
in my server context:

       location ~* announce {
               return 444;
       }

       location ~* /announce.php {
               return 444;
       }

and my log looks good:

"122.100.172.162"       "03/Aug/2022:20:19:00 -0400"    "GET
/announce.php?info_hash=%DF%AEF%40%7F%1DA%C9%91S%9F%D4%0D%D6J%E6%992%A3~&peer_id=-BC0171-_sSI%D1n%AA%A9%C3%A5%25%1E&port=15302&natmapped=1&localip=172.18.80.247&port_type=lan&uploaded=46317568&downloaded=11285925264&left=178446055&numwant=50&compact=1&no_peer_id=1&key=38892
HTTP/1.1"        "444"   "0"     "0.000"  "-"     "BitComet/1.71.9.7"


until it doesn't:

"81.110.165.170"        "03/Aug/2022:20:24:03 -0400"    "GET
/announce.php?info_hash=%5B%EA0r%8A*8%C4%DAA%81%02%B4%BF%97%CC%1E%A9y%C8&am_peer_id=-TR300%5A-LDXTt3fAIyq%00&port=43342&uploaded=0&downloaded=0&left=5593535899&event=started&key=0&compact=1&numwant=200
HTTP/1.1" "400"   "150"   "0.000" "-"     "-"


I have tried various location prefixes and regexes (and combinations
thereof) but can't seem to find the one that works correctly.

Thanks for any help
_______________________________________________
nginx mailing list -- nginx@nginx.org
To unsubscribe send an email to nginx-leave@nginx.org
Subject Author Posted

location regex?

Jay Haines August 03, 2022 08:42PM

Re: location regex?

Francis Daly August 04, 2022 03:34AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 89
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready