Manipulating a particular cache entry isn't really possible, not even Firefox extensions have that level of access. It is possible to manipulate the headers that the server returns however. Unfortunately, all the existing extensions focus on manipulating the request headers rather than response headers. But an extension for that would be really simple. So maybe you want to try that route before you install Squid again. Here is the code for an extension like that:
install.rdf
<?xml version="1.0" encoding="utf-8"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest">
<em:id>headermanip@superuser.com</em:id>
<em:version>1.0</em:version>
<em:type>2</em:type>
<em:bootstrap>true</em:bootstrap>
<!-- Firefox -->
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>8.0</em:minVersion>
<em:maxVersion>99.0</em:maxVersion>
</Description>
</em:targetApplication>
<!-- Front End MetaData -->
<em:name>Caching header manipulation</em:name>
</Description>
</RDF>
bootstrap.js
Components.utils.import("resource://gre/modules/Services.jsm");
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
function install(data, reason) {}
function uninstall(data, reason) {}
function startup(data, reason)
{
Services.obs.addObserver(Observer, "http-on-examine-response", true)
};
function shutdown(data, reason)
{
Services.obs.removeObserver(Observer, "http-on-examine-response")
};
var Observer =
{
observe: function(subject, topic, data)
{
if (subject instanceof Components.interfaces.nsIHttpChannel &&
subject.URI.host == "cdn.sstatic.net")
{
subject.setResponseHeader("Cache-Control", "max-age=2592000", false);
}
},
QueryInterface: XPCOMUtils.generateQI([
Components.interfaces.nsIObserver,
Components.interfaces.nsISupportsWeakReference
])
};
Put these two files into a ZIP archive and rename it into headermanip.xpi - done, you have an extension that will change the caching header for anything coming from cdn.sstatic.net (used on this site) to expire after 30 days rather than the usual 7 days. If you want it to happen on a different host - change the subject.URI check in bootstrap.js. You can also check subject.URI.spec if you want to look at the full URL rather than the host only.