Это запрос XMLHttpRequest:
$.ajax({
method: "get",
url: "getPage.php",
data: $data,
dataType: 'json',
timeout: 2000,
success: function(result) {
handleContent(result);
}
});
Это getPage.php? Data = data
header("Expires: " . gmdate("D, d M Y H:i:s", time() + $offset) . " GMT");
header("Cache-Control: max-age=" . $offset . ", public");
header("HTTP/1.1 301 Moved Permanently");
header("Location: $location);
Это местоположение в $:
header("Expires: " . gmdate("D, d M Y H:i:s", time() + $offset) . " GMT");
header("Cache-Control: max-age=" . $offset . ", public");
print $print;
Клиентский браузер правильно кэширует $ location. Однако он не кэширует перенаправление в getPage.php? Data = data
Каждый раз, когда вызывается ajax-запрос, он запрашивает GET getPage.php? Data = data.
Я бы хотел, чтобы вместо него автоматически получалось $ location (или, скорее, попробуйте GET $ location и получить страницу из кэша).
Разве это не то, для чего предназначен 301 Permanent Redirect? Создание редиректа, который кэшируется браузером (плюс, конечно, прокси, поисковая система и т. Д.)?
Пожалуйста, не задавайтесь вопросом, почему я решил сделать это таким образом. У меня есть причины для этого, которые я не собираюсь здесь обсуждать. Все, что мне нужно, - это ответ и, возможно, решение, которое позволит перенаправить 301 в кеш, что приведет к тому, что после первого запроса вообще не будет запросов GET.
Заранее спасибо!