Гибкая среда Laravel и движка приложений Google. Установить контроль кеша в конфигурации nginx не работает - PullRequest
0 голосов
/ 14 июня 2019

Я создаю приложение laravel и пытаюсь включить кэширование в браузере.

Я пытался установить expires / cache-control в пользовательском файле nginx-app.conf, расположенном в корне моего приложения.(https://cloud.google.com/appengine/docs/flexible/php/reference/app-yaml)

Содержимое nginx-app.conf:

location ~* \.(?:css(\.map)?|js(\.map)?|jpe?g|png|gif|ico|cur|heic|webp|tiff?|mp3|m4a|aac|ogg|midi?|wav|mp4|mov|webm|mpe?g|avi|ogv|flv|wmv|svgz?|ttf|ttc|otf|eot|woff|woff2) {
  expires 30d;
  add_header Pragma public;
  add_header Cache-Control "max-age: 2592000,public";
}

Но заголовки по-прежнему содержат элемент управления кэшем по умолчанию, равный 600 секундам от Google.

cache-control: max-age=600
cache-control: public
content-encoding: gzip
content-type: text/css
date: Fri, 14 Jun 2019 10:19:07 GMT
etag: W/"5d03719d-6ffe"
expires: Fri, 14 Jun 2019 10:29:07 GMT
last-modified: Fri, 14 Jun 2019 10:06:21 GMT
server: nginx
status: 200
vary: Accept-Encoding
via: 1.1 google

1 Ответ

0 голосов
/ 30 июня 2019

У меня были похожие проблемы с кэшированием в Nginx на GAE flex, и я не смог найти решение для обратного прокси.

Полагаю, вам нужно дождаться истечения срока действия этих файлов, а затем вы увидите новый элемент управления кэшем.

Я нахожу GAE очень ограничивающим с этой точки зрения, такой ситуации не было, например, в AWS.

Обходной путь на прикладном уровне -

  1. очистка кэша / управление версиями статических файлов (вы можете увидеть этот пример для Sails.js )
  2. добавление заголовков кэша к запросам ( та же ссылка, после комментария )

См. Также этот ответ

...