On Nov 1, 2007, at 8:23 PM, Richard Glaser wrote:

We found this info...

Safari supports server-side caching directives... not the meta tag

Check out number five on my FAQ  
-http://developer.apple.com/internet/safari/faq.html#anchor5

Why?

Why does only support server-side caching directives when it appears other browsers like FireFox, IE support meta tag. Seems like this will cause many backend systems to not support Safari since it market share is 5% and probably many assume it works since it works in Firefox & IE and probably can't justify development development time for it.

I am not a Safari developer, and only a very occasional WebKit contributor, so I can't answer this directly, but I seem to recall that Safari generally trusts HTTP headers over HTML META tags. One reason may be that, according to the HTML 4.01 spec, the *web server* is supposed to translate META HTTP-EQUIV tags to HTTP headers, not the client.

Caching directives don't matter only to the browser, they matter to any caching proxy server between the user and developer of the application. Many caching proxy servers may only ever look at the headers, never looking at the content, because they are designed to support the HTTP protocol, not HTML. So if you are having trouble with the META tags in Safari, it means that you might also have trouble with aggressive caching proxy servers (I happen to be behind one at work, so I've really had to make sure that things like our auto- updater weren't thwarted by the caching proxy server). If you're just doing this for kiosks, you might be able to avoid that issue, but in general, you can't trust META HTTP-EQUIV tags will be interpreted properly no matter what browser you're using, because the proxies may cache even if the browser doesn't.

It should be possible in whatever tool you're using to set HTTP headers on the content thats going out. If you can't set it programmatically in the set of pages you want to, most web servers will let you specify headers on a per-directory basis in their configuration. If you can't do even that, you could put the webserver behind a simple proxy that just replaces the headers you are interested in. Apache and lighttpd are both free webservers that can be configured in a proxying mode that will rewrite the HTTP headers appropriately.

We probably will file a bug (feature request) on this.
_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to