Ответ 1
Согласно Microsoft (http://support.microsoft.com/kb/234067), вам нужно установить заголовок Expires для -1, чтобы это нормально работало в Internet Explorer.
На странице:
Во многих случаях веб-серверы имеют один или более энергозависимые страницы на сервере, которые содержат информацию, которая является предметом немедленно изменить. Эти страницы должен быть отмечен сервером с значение "-1" для Expires заголовок. О будущих запросах пользователя, Internet Explorer обычно контакты на веб-сервере для обновления эта страница с помощью условного If-Modified-Since request.
Я думаю, дело в том, что если IE имеет дату истечения срока действия, он не видит причин спрашивать вас, был ли ресурс изменен, поскольку его кешированная копия должна быть "достаточно хорошей".
На странице также говорится, что IE поддерживает Cache-control: no-cache, хотя это не рекомендуется. Похоже, что это должно сработать, но в любом случае попробуйте использовать Expires.
Кроме того, другой googling говорит мне, что браузеры, как ожидается, отправят If-Modified-Since вообще, так что, возможно, почему Firefox работает. Попробуйте удалить Cache-Control: no-cache, чтобы убедиться, что Firefox по-прежнему ведет себя правильно.