Я думаю, что ответ Гамбо является наиболее разумным до сих пор. Однако попробуйте это:
<?php
header('Gobbledy Gook', true, 304);
?>
Если первая строка не является надлежащим заголовком, она отбрасывается. Если гу выглядит как действительный заголовок он приложенный к коллекторам - попробуйте это:
<?php
header('Cache-Control: max-age=10', true, 304);
?>
Руководство для заголовка() и обратите внимание на особых случаи - в общем, я думаю, его не рекомендуется полагаться на таких встроенном в эвристике.
Тем не менее, я предполагаю, что на самом деле вы заинтересованы в том, чтобы контент был хорошо кэширован прокси/браузерами. В большинстве случаев латентность - это скорее проблема проблемы, чем пропускная способность. Далее рассмотрите, как работает браузер, когда кешированный контент устарел - в отсутствие обновленной информации кэширования он продолжает повторять запросы на сервер, чтобы узнать, все ли содержимое остается устаревшим.
I.e. в большинстве случаев игнорирование условной части запросов (или даже лучшее удаление их на веб-сервере) фактически повышает производительность.
почему вы заботитесь о совместимости php4? не используете ли вы объекты (или используете их очень ограниченно)? –
Действительно, я считаю, что PHP 4 холодный мертв. Я больше не поддерживаю PHP <5 в любом из моих сценариев. – AlexV
Довольно, но по-прежнему существует большое количество серверов PHP 4, поэтому, если потребуется, чтобы код был переносимым, то это соображение. Почему вы все еще заботитесь об HTTP/1.0? –