Я пытаюсь выяснить, могу ли я заставить браузеры кэшировать изображения с подписанными URL-адресами.Кэширование изображений с различными строками запросов (S3 подписанные URL)
Я хочу создать новый подписанный URL для каждого запроса (то же изображение, но с обновленной подписью), но браузер не будет повторно загружать его каждый раз.
Итак, предположим, что заголовки, связанные с кешем, установлены правильно, и весь URL-адрес тот же, за исключением строки запроса, есть ли способ сделать его кеш браузера?
URL, будет выглядеть примерно так:
http://example.s3.amazonaws.com/magic.jpg?WSAccessKeyId=stuff&Signature=stuff&Expires=1276297463
http://example.s3.amazonaws.com/magic.jpg?WSAccessKeyId=stuff&Signature=stuff&Expires=1276297500
Мы планируем установить электронные метки, чтобы быть md5sum, так это будет, по крайней мере выяснить, это то же самое изображение в этой точке?
Мой другой вариант - отслеживать, когда последний выдавал URL-адрес, а затем начинать выдавать новые, прежде чем старые истекают, но я бы предпочел не заниматься информацией о сеансе.
Знаете ли вы, что он хотя бы проверит e-tag и не загрузит его еще раз? –
Заголовок ETag отправляется браузером только на сервер, когда он находит файл в его кеше (и если исходный файл имеет значение ETag). Поэтому, если он не может найти его в своем кеше (который не будет, если URL-адрес изменился), нет значения ETag для отправки запроса. –
Правило перезаписи URL-адресов снова сделает подпись S3 бесполезной, поскольку веб-сервер автоматически предоставит ссылку с истекшим сроком действия. Затем вы также можете пометить файлы в S3 как «общедоступные». (Тогда для доступа к файлам не требуется подпись) – Tarnschaf