Remove permanent redirect (HTTP 301) cache in Firefox

As a web developer configuring SSL certificates on websites you deliver, as we do, you might be faced, one day, with a small issue about configuring a 301 redirect from HTTP to HTTPS that has to be reverted. It so happens that browsers *really* take it to heart to cache an HTTP 301 (permanent redirect) message seriously and deeply. So much so that it might become very difficult to remove this redirect and ever be able to access the site in HTTP again.

On PHP and cache slams and solutions

While reading about Doctrine's cache mechanism (which applies to other stuff than database queries, by the way), my eye was caught by a little message at the end (last section) about cache slams. I have used cache mechanisms extensively over the last few years, but (maybe luckily) never happened to witness a "cache slam". There's a link to a blog (by an unnamed author) that explains that. To make it short, you can have race conditions in APC (and

What HTTP headers do browsers send on CTRL+F5?

If you've been into website development, and in particular website optimization, you probably have stumbled upon that question at least once: what HTTP headers do the different browsers send when the user presses F5 or (even better) CTRL+F5, to make the web server bypass the cache system? Well, the user "some" on Stackoverflow answered that in a very complete way here: http://stackoverflow.com/questions/385367/wha

Building a cache cleaner from devel for Drupal 5

In a particular context, it happened to me to have to reproduce a cache cleaner feature for Drupal 5 without installing the Devel module. Although this article doesn't create anything new, I thought it might be worth explaining in case this would help someone someday. The idea is to re-use the code from the devel module and put it into another module for re-use without having the weight corresponding to a new module installation. The code from the devel module (devel.module) looks like this:
/** * Implementation of hook_menu(). */ function devel_menu($may_cache) { $items = array