proxy_pass is double-encoding some pre-encoded uri's

Joey Korkames joey at
Thu May 29 03:39:56 MSD 2008

I fixed this with the following rewrite:

          location /apt-fetch-easynews {

                 +rewrite (.*)%25(.*) $1%$2;
                 +rewrite (.*)%7e(.*) $1~$2;

                 rewrite /apt-fetch-easynews/apt-cache/([^/]*)/([^/]*)(.*) /linux/debian$3 break;

Mike, I have looked at the various apt proxy programs. They all are Twisted/Perl/CGI daemons of some sort.
All have pros and cons, but Nginx is much, much faster than all of them.
The only thing after these stanzas in nginx I needed was a script to remove old files from the cache.

Hooray for nginx!

More information about the nginx mailing list