title: Nginx, howto check if there is some extra query arguments (unknow) not included in the permitted argument list
body: <p>I try to get a way to detect any extra query argument not included in the permitted argument list in urls with nginx. The objective is to block any request with any query argument not included in this list.</p>
  <p>Correct url: <a href="https://www.test.site.com/search?q=test&amp;order=asc" rel="nofollow noreferrer">https://www.test.site.com/search?q=test&amp;order=asc</a></p>
  <p>Wrong url: <a href="https://www.test.site.com/search?q=test&amp;order=asc&amp;_dflsj=834783423" rel="nofollow noreferrer">https://www.test.site.com/search?q=test&amp;order=asc&amp;_dflsj=834783423</a></p>
  <p>I managed a site with a huge traffic and there is a lot of abuse from multiple bots. I use microcaching with nginx to protect the site but bot try to use this extra arguments to bypass caching effect.</p>
  <p>I have already get the caching to work correctly and mitigate this abuse adding the correct key in the fastcgi_cache_key and not taking in account this &quot;extra&quot; arguments.</p>
  <p>But now I want to block them.</p>
  <p>Thanks for any advice.</p>