Arthus Erea wrote: > > Furthermore, there should be an option to disable the cache somewhere > in the UI. That would give tinkerers the ability to work on the theme, > then re-enable the cache when they're done. > Where should such an option be? In the theme config or in the main > settings page? (I'm leaning towards main settings.)
Sounds fine to me. >> There really isn't a need to use that one directory, but it would make >> it easier to route requests. I imagine a rewrite rule that resolves >> to >> a single hook, where the file that the request asks for is passed in. >> Plugins/Themes that can resolve the file simply return it, and the >> system takes care of putting the file where it belongs and managing >> versioning. The plugin would call a specific function to clear a file >> from the build cache. Also, some logic for versioning and appending a >> querystring to the URL (like .../style.css?6) would be handled by the >> system. > > What would the benefit of the querystring be? Shouldn't there really > just be one version regardless? If the CSS is served properly, it will come with headers that set a long client-side cache life. This is a benefit because it will avoid the client from continuously requesting updates of the CSS from the server. The downside is that if the CSS is actually updated on the server, there's no way the client would know, since its cache settings tell it not to request updates. The remedy is to add a simple querystring with a version number. The querystring is ignored by Apache, but the browser sees it as a new URL, which circumvents its previous cache settings for that file. The same file is served, but by adding the querystring, the client behaves as though the cache must be refreshed. Upon receiving the new file, it is once again cached, hopefully using the same settings as before, and will subsequently not be requested again until that querystring number is updated. This is a fairly standard method for implementing a solid client-side caching strategy, while still enabling server-side changes to propagate to the client. > In terms of HiEngine, I wonder if we could actually run both PHP and > HiEngine at once on the generation. I'd see it working like this: > 1) We open a buffer to catch the output > 2) The stylesheet is included > 3) We run the resultant css through the HiEngine > 4) We output/cache the CSS > > Since most requests will be served from the cache, this shouldn't be > too much of a hassle. I'm not sure what this is meant to accomplish, but it seems unnecessary. Owen --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to habari-dev@googlegroups.com To unsubscribe from this group, send email to habari-dev-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/habari-dev -~----------~----~----~----~------~----~------~--~---