imageproxy is a small standalone WSGI application that dynamically resizes images.
It supports virtual hosting, so you can use the same instance to serve assets for different domains.
Example config file:
[site:example.net] root=/srv/example.net/web/media/images prefix=/assets/media/images [site:example.com] root=/srv/example.com/web/media/images prefix=/assets/media/images
By default only JPEG files can be resized, but if you'd like to make GIFs and PNGs resizable, add the following:
[type:image/gif] resize=true [type:image/png] resize=true
You can specify the configuration file location by giving its path in
the IMAGEPROXY_SETTINGS
environment variable.
If you want to use this with Paste, it comes with a sample config file.
Naturally, you'll need Paste, PasteDeploy, and PasteScript to run it.
However, Paste isn't required and the imageproxy.create_application
callable can be used with any WSGI server.