query_string_optimizer
Makes your website more resilient against bots and malicious scripts by sorting and making query parameters unique.
This module will sort your query strings and make them also unique.
Example
Original:
/nl/overview-news?category[]=16&category[]=17&category[]=17
Optimized:
/nl/overview-news?category[]=16&category[]=17
Original:
/nl/overview-news?category[]=16&category[]=17&category[]=17&test&abc=123
Optimized:
/nl/overview-news?abc=123&category[]=16&category[]=17&test=
This will make sure that caching will be optimized because all of these are 301 redirects which can be cached by every layer (for example Varnish)
Why do we need this?
Considering the rise of bots and also AI bots etc filters and searches get exploited/misused every often. Without rate limiting or blocking bots (if it even works) this will help out a lot. (Tested on high visibility websites)
For example we used to have urls in our logs like:
/nl/overview-news?category[]=16&category[]=17&category[]=17&category[]=17&category[]=17&category[]=17&category[]=17
This module will make sure that no more than one category 17 can be used.
/nl/overview-news?page=10category[]=16&category[]=17&category[]=17&category[]=17&category[]=17&category[]=17&category[]=17&
This module makes sure that "page" parameter is always in the same position. This allows for url caching on for example Varnish.
Post-Installation
Should be active already.