The workaround for bug #18445 seems no longer required; the issue has been fixed in Apache2 and PHP4 for some time. The workaround both interferes with legitimate use of If-Modified-Since in PHP, and requires mod_headers to be enabled in Apache which may otherwise be unneeded. With an appropriate version dependency, this workaround could be removed from the mod_php config, saving end users from modifying the PHP configuration. ;)
Before I remove the workaround, could you provide upstream links that show it's properly fixed?
The fix was two parts: first, Apache needed to provide an API for filter modules to use to tell the server when a 304 is required - this was fixed in 2.0.40 with this changelog entry: *) Add a filter_init parameter to the filter registration functions so that a filter can execute arbitrary code before the handlers are invoked. This resolves a problem where mod_include requests would incorrectly return a 304. [Justin Erenkrantz] (http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9673) This fixed the issue for mod_include as well, which is where it was originally discovered by the Apache team. Once this change was made, PHP was updated to actually use this API. The bug on PHP's 'zilla (http://bugs.php.net/bug.php?id=17098) doesn't make this very clear, but it was fixed in PHP 4.3.2 with this changelog entry: - Fixed bug #17098 (make Apache2 aware that PHP scripts should not be cached). (Ilia) I've tested it on my installation using apache-2.0.50-r1 and mod_php-4.3.8, and the fix is definately functioning correctly for me, and both the Apache and PHP bugs have been closed on the respective 'zillas. Hope that's all the information you need.
In cvs now, not bumping revisions yet.