encyclo - 12:58 am on Mar 17, 2011 (gmt 0)
The first question is: why you are parsing CSS and JS files with PHP? Do you really need to? Apache handles static content very well, once you add PHP into the mix things become much more complicated.
If you absolutely have to parse the files with PHP, then try cgi_buffer [mnot.net] (I've not tested it though).
As for the response, it looks OK at first glance - you can test with REDbot [redbot.org]. I'm guessing that Apache won't ever natively send a 304 not modified response as it does not itself generate the ETag in your example.
But again, why go through this trouble? There must be a better solution to whatever problem you are trying to resolve with PHP-parsed CSS/JS files. There's no apparent logic to the approach that I can see, because if the file has variables managed by PHP for each request, then how can you cache it for a month? If the file is static, then why let PHP parse it?