[whatwg] Caching of identical files from different URLs using checksums
Bjartur Thorlacius
svartman95 at gmail.com
Sat Feb 18 13:31:22 PST 2012
Þann lau 18.feb 2012 13:45, skrifaði Sven Neuhaus:
> The relevant section from RFC 3986 reads:
>
> "The fragment identifier component of a URI allows indirect
> identification of a secondary resource by reference to a primary
> resource and additional identifying information. The identified
> secondary resource may be some portion or subset of the primary
> resource, some view on representations of the primary resource, or
> some other resource defined or described by those representations."
>
> This description is not contradicting the use of checksum as fragment
> identifiers. They are "additional identifying information."
I beg to differ. I interpret the RFC as stating that the fragment
identifier allows indirect identification of a secondary resource. The
fragment identifier itself is whatever information is needed to derive
the secondary resource from the primary resource. That is, you need
*both* a "reference to a primary resource" (i.e. an URI with no fragment
identifier) and "additional identifying information" (i.e. the fragment
identifier).
> The fragment identifier component of a URI allows indirect
> identification of a secondary resource by {reference to a primary
> resource and additional identifying information}.
A checksum of (a representation body of) the primary resource identifies
(said representation body of) the primary resource, not any secondary
resource derived therefrom.
And as has been pointed out previously, representations of resources are
frequently obsoleted. Existing caching mechanism take care of that
already, without requiring every reference to be updated on every
obsolete. The problem you have mentioned is duplicate identifiers (that
undermine the very raison d'être of identifiers).
Another solution would be to add a host attribute to linking elements
(script, link, etc) that specifies a domain name of an endorsed CDN that
will serve the resource (and ideally a public key). HTTP/1.1 mandates
support for but forbids requests of the form <METHOD URI "HTTP/1.0">.
IIRC the current RFC forbids, but mandates support for, such requests.
The seventeenth httpbis draft OTOH explicitly allows absolute URI in
request lines, at least to proxies.
bjartur at gamla ~ $ nc google.org 80
GET http://www.google.is/ HTTP/1.0
HTTP/1.0 200 OK
More information about the whatwg
mailing list