Отключение кеша при обработке xslt на стороне клиента
При написании проекта, в котором xslt обрабатывается на стороне клиента, возникла проблема:
Изменяя различные xslt-документы, они не меняются на строне клиента, клиентская сторона делает запрос на их получение, в ответ получает 301 HTTP-статус с датой изменения такой же, как есть уже, хотя на сервере лежит новая версия xslt-документа, дата изменения файла > чем на клиенте.
В принципе, такая возможность есть гуд, когда проект готов. Но при его разработке сильно напрягает и тормозит процесс.
Решение нашлось - Apache-модуль mod_expires, который добавляет HTTP-заголовки Expires и Cashe-Control (max-age) к запрашиваемым документам, подробней на странице документации.
Код (.htaccess):
Пока проект находится в стадии разработки, при каждом запросе xslt-документы обновляются.
Самое главное - не забыть закомментировать эти две строчки перед сдачей проекта :)
Изменяя различные xslt-документы, они не меняются на строне клиента, клиентская сторона делает запрос на их получение, в ответ получает 301 HTTP-статус с датой изменения такой же, как есть уже, хотя на сервере лежит новая версия xslt-документа, дата изменения файла > чем на клиенте.
В принципе, такая возможность есть гуд, когда проект готов. Но при его разработке сильно напрягает и тормозит процесс.
Решение нашлось - Apache-модуль mod_expires, который добавляет HTTP-заголовки Expires и Cashe-Control (max-age) к запрашиваемым документам, подробней на странице документации.
Код (.htaccess):
ExpiresActive On
ExpiresByType application/xslt+xml "access plus 1 seconds"
Пока проект находится в стадии разработки, при каждом запросе xslt-документы обновляются.
Самое главное - не забыть закомментировать эти две строчки перед сдачей проекта :)
