Я обнаружил, что Expires один не правильно установить поведение. Ниже был верный пожар:
# Set cache
expires 1M;
add_header Pragma public;
add_header Cache-Control "public";
Это происходит в вашем блоке местоположения.
Я также думаю, что есть много вводящей в заблуждение информации об этом .. Эти 200 как-то совпадают с 200 (кеш).
Из моего понимания:
200 - запрос к серверу - передача ОК
200 (кеш) - ОК - нет запроса к серверу (из кеша)
304 - запрос к серверу - без передачи (без изменений)
200 (кеш), как я понимаю, НЕ делает серверный запрос вообще.