Php static files return 304 ,. Php static files return 304. sometimes some static files (slices) are output by php, and the requests are all 200. it is a waste of resources to request static files on the server every time, in this case, if the php static file returns 304,
Sometimes some static files (slices) are output by php, and all requests are 200. every time a static file is sent to the server, it is a waste of resources. how can we cache images in the browser? We need to output 304 in php.
We can useHTTP_IF_MODIFIED_SINCE
Combine etag to do this. Etag does not have a clearly defined format. we can use the md5 value of the file modification time. the code is as follows:
private function _addEtag($file) { $last_modified_time = filemtime($file); $etag = md5_file($file); // always send headers header("Last-Modified: ".gmdate("D, d M Y H:i:s", $last_modified_time)." GMT"); header("Etag: $etag"); // exit if not modified if (@strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) == $last_modified_time || @trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) { header("HTTP/1.1 304 Not Modified"); exit; }}
In the code, you can call it before the static file (slice) is output.
Sometimes some static files (fragments) are output by php, and the requests are all 200. it is a waste of resources to request static files to the server every time, as shown in the following figure...