I've tried CMSms quickly and I like it much. It is efficient because of simplicity, enforcing the KISS programming philosophy. (I speak more as a user rather than a code reviewer because I haven't looked at the code yet.) And it is GPL

I'm trying to contribute back with this little post about cache/caching, static export, pretty URLs and rewriting. I have overviewed Apache's URL rewriting guide. Please read "On-the-fly Content-Regeneration" on http://httpd.apache.org/docs/2.0/misc/r ... ml#content (scroll down a bit). This tip may be a nice way to easyly get/improve (if needed) 3 powerfull features of CMSms : advanced caching, static export and cool readable URLs. Extract :
"Dynamically generated but statically served pages, i.e. pages should be delivered as pure static pages (read from the filesystem and just passed through), but they have to be generated dynamically by the webserver if missing. This is done via the following ruleset:
[if the static page doesn't exist, dynamically create it and serve the static page.]
RewriteCond %{REQUEST_FILENAME} !-s
RewriteRule ^page\.html$ page.cgi [T=application/x-httpd-cgi,L]
Here a request to page.html leads to a internal run of a corresponding page.cgi if page.html is still missing or has filesize null. The trick here is that page.cgi is a usual CGI script which (additionally to its STDOUT) writes its output to the file page.html. Once it was run, the server sends out the data of page.html. When the webmaster wants to force a refresh the contents, he just removes page.html."
OK, it has to be worked "from cgi to PHP" (and to keep CMSms querystring) but it looks feasable, doesn't it ?
I suppose it isn't a big programming task to achieve this. The drawback is that it needs mod_rewrite. The advantages I see are a bugproof implementation of advanced caching and a powerfull scalability because once a page has been served, all subsequent requests for the same page just download a static file (no PHP runtime, no DB access...)
What do you think about that ? Is there any mistake ? a stopper drawback ?
PM
PS : I apologize if this subject has already been posted. I was not able to find it by "search".