Это на самом деле так, чтобы кэшированные страницы с более старыми версиями файлов не ломались. Смотрите этот закрытый вопрос .
TL; DR: они будут автоматически удалены через 30 дней (или независимо от того, на что установлена ваша drupal_stale_file_threshold
переменная) после того, как они были созданы с помощью drupal_clear_css_cache()
и drupal_clear_js_cache()
. Таким образом, решение состоит в том, чтобы изменить drupal_stale_file_threshold
значение до значения, которое меньше 30 дней по умолчанию.
- Когда удаляются старые файлы
Старые файлы кэша не удаляются сразу же после очистки переменной поиска, а удаляются по истечении заданного периода с помощью drupal_delete_file_if_stale (). Это гарантирует, что файлы, на которые ссылается кэшированная страница, будут по-прежнему доступны.
drupal_delete_file_if_stale()
по умолчанию 30 дней - поэтому, если a) Cron работает правильно и b) вы видите агрегированные файлы старше 30 дней, у вас другая проблема.
variable_get('drupal_stale_file_threshold', 2592000)
это 30-дневный чек.
variable_set('drupal_stale_file_threshold', 172800)
изменит время ожидания до двух дней. На сайте, где обработка кеша строго контролируется, время может быть еще короче.
Источник: http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_build_css_cache/7
Дополнительную drupal_delete_file_if_stale()
информацию смотрите в разделе .
- Есть ли какая-то причина, по которой файлы .css и .css.gz сохраняются?
Если включено сжатие CSS gzip, включены чистые URL-адреса (что означает, что правила перезаписи работают), и расширение zlib доступно, затем создайте версию этого файла в формате gzip. Этот файл предоставляется условно браузерам, которые принимают gzip с использованием правил .htaccess.
Источник:
http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_build_css_cache/7 (в комментариях к функциям)
Также посмотрите, drupal_build_js_cache()
что почти идентично drupal_build_css_cache()
.