Urrggghhh, PHP?<p>But this is exactly the kind of thing that PHP is good at. Dump a file in a directory that does one specific thing, and you're good to go. No need to integrate it with the rest of your web site. It's just a little CGI-like script that does its own thing.<p>But if you use this on a smallish VPS, keep an eye on memory usage. Image processing in PHP tends to hog a lot of RAM, and even a small number of simultaneous requests can crash a server. You might need to warm your cache a little bit before going public with new images.
I'm not terribly well versed with nginx, but the creator mentions only support for .htaccess, I was able to get this working with the following in my config for nginx:<p><pre><code> if ($request_filename !~* ai-cache) {
rewrite \.(?:jpe?g|gif|png)$ /adaptive-images.php last;
}</code></pre>
All of these adaptive image solutions are heroic but incredible hacks. They load two images, load no images when JavaScript is disabled, depend on userAgent sniffing, and/or only work with specific backend technologies.<p>What we need is the ability to tell the client what we have, then let the client choose the right one based on screen size and bandwidth. Browsers should be able to do that for us. Here's one solution along that line:<p><a href="http://www.alistapart.com/articles/responsive-images-how-they-almost-worked-and-what-we-need/" rel="nofollow">http://www.alistapart.com/articles/responsive-images-how-the...</a>
This approach was also put forward by Stephanie Rieger. Specifics start at slide #83:<p><a href="http://www.slideshare.net/yiibu/adaptation-why-responsive-design-actually-begins-on-the-server" rel="nofollow">http://www.slideshare.net/yiibu/adaptation-why-responsive-de...</a>
Also have a look at the discussion reg. server-side vs client-side adaptive images hacks at:<p><a href="http://24ways.org/2011/adaptive-images-for-responsive-designs-again" rel="nofollow">http://24ways.org/2011/adaptive-images-for-responsive-design...</a>
Just in time for 4G to be everywhere in my area :/ Where were you 3 years ago? Now I would just be annoyed by this when I tried to zoom in on an image and got a pixellated mess.