Как сделать, что клиенту прилетал актуальный PDF-файл?
Сервер (PHP + mPDF) формирует из данных клиента pdf-файл с некой спецификацией и присылает в браузер. Потом клиент что-то меняет и ему присылается тот же файл, но уже с изменениями. Проблема в том, что браузер открывает старый кэшированный файл, если принудительно не нажать обновление в браузере F5.
Что и как надо прописать в заголовке файла или в настройках сервера, чтобы браузер брал новый файл, а не из кэша?
Выставить настройки кэша в заголовках ответа, отдающего файл.
Для особо упертых браузеров, которые могут класть на эти заголовки (вроде Хрома) - отдавать файл каждый раз по другой ссылке (добавив ?ver=mtime, например).
это вообще лучший вариант для предотвращения кеширования, пока условно в 2025 не придумали какое нибудь умное на ai.
Рекомендую везде пользоваться, но с осторожностью
Называть новый файл по новому? Таймстэмп или текущие дата+время вполне подойдут... Ну, или можно давать при скачивании get параметр с таймстэмпом, типа mydomen.tld/download/vasea.pdf?t=123456