2016-08-05 8 views
0

Два вопроса в одном.URL-адреса переменных и перенаправления PHP, можно ли их кэшировать?

Могут ли браузеры в основном кэшировать URL-адрес (сценарий js), если он запрашивается с переменными URL? . www.thing.com/?l=lib & s = thing.js

Могут ли браузеры кэшировать файл, если это перенаправление php? . www.thing.com/script.js (называется, является файлом php с перенаправлением на www.thing2.com/actual.js)

Спасибо.

+1

Браузер обычно кэшировать любой URL она разрешена (через заголовки политики кэш, хотя браузер может по-прежнему предпочитают игнорировать те), в основном любой результат запроса потенциально может быть кэшируемым. Однако обратите внимание, что: 'www.thing.com/? L = lib & s = thing.js' и' www.thing.com/? S = thing.js & l = lib' могут отличаться в глазах браузера. – apokryfos

ответ

2

Поскольку у вас есть два вопроса

  1. Может браузеры в общем кэше URL (JS скрипт), если он просил с URL переменных? Например. www.thing.com/?l=lib & s = thing.js

    Да.

  2. Могут ли браузеры кэшировать файл, если это перенаправление php? Например. www.thing.com/script.js (называется, является файлом php с перенаправлением на www.thing2.com/actual.js)

    Зависит. Если редирект является 301, то да per the spec

    Запрошенный ресурс был назначен новый постоянный URI, и любые будущие ссылки на этот ресурс следует использовать один из возвращенных URI. Клиенты с возможностями редактирования ссылок должны автоматически перенаправить ссылки на Request-URI на одну или несколько новых ссылок, возвращаемых сервером, где это возможно. Этот ответ можно кэшировать, если не указано иное.

    Если редирект является 302, то maybe

    Запрошенный ресурс временно находится под другим URI. Так как перенаправление может быть иногда изменено, клиент ДОЛЖЕН продолжать использовать Request-URI для будущих запросов. Этот ответ доступен только для кэширования, если указано полем Cache-Control или Expires.

+0

Спасибо. Моя текущая установка использует 302 и, кажется, никогда не кэширует материал. Я тоже их перестрою 301. –