New answers tagged encoding
With nginx/1.2.1, I wasn't able to reproduce your issue of %20, once decoded into a space, of causing any 400 Bad Request within nginx; perhaps that's coming from upstream? Regardless, it is actually not that difficult to use the finite-state automaton that is provided through the rewrite directive to stop $uri from containing the decoded request, yet still ...
I hate to turn this into a discussion about tools, rather than about the technology involved, but you may want to look into the use of tcpreplay which takes .pcap files and replays them even at the same speed that they originally came in.
Top 50 recent answers are included