Странные символы в конце атрибутов src/href в теге head
Быстрый вопрос: почему Друпал добавляет персонажей в конце src
или же href
атрибуты в link
а также script
теги в заголовке страницы? У меня есть это:
<link type="text/css" rel="stylesheet" media="all" href="/ste_thecle/modules/views/css/views.css?n" />
И это одинаково для каждой загруженной таблицы стилей и скрипта. Я не могу понять, почему он это делает, и я думаю, может быть, это причина, почему моя тема все запуталась в IE...
Благодарю.
3 ответа
Каждый раз, когда браузер загружает внешний файл JavaScript, браузер помещает файл в свой кэш. Таким образом, во второй раз, когда вы перезагрузите страницу и попытаетесь загрузить тот же внешний файл, браузер будет использовать его из кэша.
Если вы внесете изменения в файл JavaScript и попытаетесь перезагрузить страницу, изменения не вступят в силу, поскольку браузер будет использовать файл кэша.
Чтобы предотвратить такое поведение, Drupal добавит случайное значение в конец URL-адреса файла JavaScript. Таким образом, браузер увидит файл как новый файл и не будет использовать файл в кэше браузера.
Хорошей практикой является удаление этой функциональности на этапе производства, чтобы страница загружалась быстрее.
Эти вещи добавляются для принудительного управления кешем. Это не имеет ничего общего с испорченной темой в IE.
Потому что другая строка запроса (?n
) добавляется каждый раз, ваш браузер "думает", что ресурс другой, поэтому он загружает файл, а не извлекает его из кэша. Делая это, Drupal гарантирует, что вы не смотрите на устаревшие файлы, которые были изменены с момента их кэширования.