aboutsummaryrefslogtreecommitdiff
path: root/files/ru/glossary/cacheable
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:51:05 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:51:05 +0100
commitc058fa0fb22dc40ef0225b21a97578cddd0aaffa (patch)
treedf20f8b4c724b61cb9c34cdb450a7ac77d690bd0 /files/ru/glossary/cacheable
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.tar.gz
translated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.tar.bz2
translated-content-c058fa0fb22dc40ef0225b21a97578cddd0aaffa.zip
unslug ru: move
Diffstat (limited to 'files/ru/glossary/cacheable')
-rw-r--r--files/ru/glossary/cacheable/index.html59
1 files changed, 59 insertions, 0 deletions
diff --git a/files/ru/glossary/cacheable/index.html b/files/ru/glossary/cacheable/index.html
new file mode 100644
index 0000000000..54f93bb14c
--- /dev/null
+++ b/files/ru/glossary/cacheable/index.html
@@ -0,0 +1,59 @@
+---
+title: Кэшируемые методы
+slug: Словарь/cacheable
+tags:
+ - Glossary
+ - HTTP
+translation_of: Glossary/cacheable
+---
+<p><strong>Кэшируемые</strong> ответы - это HTTP-ответы, которые могут быть закэшированы, то есть сохранены для дальнейшего восстановления и использования позже, тем самым снижая число запросов к серверу. Не все HTTP-ответы могут быть закэшированы. Вот несколько ограничений:</p>
+
+<ul>
+ <li>Метод, используемый в запросе, кэшируемый, если это {{HTTPMethod("GET")}} или {{HTTPMethod("HEAD")}}. Ответ для {{HTTPMethod("POST")}} или {{HTTPMethod("PATCH")}} запросов может также быть закэширован, если указан признак "свежести" данных и установлен заголовок {{HTTPHeader("Content-Location")}}, но это редко реализуется. (Например, Firefox не поддерживает это согласно https://bugzilla.mozilla.org/show_bug.cgi?id=109553.) Другие методы, такие как {{HTTPMethod("PUT")}} и {{HTTPMethod("DELETE")}} не кэшируемые, и результат их выполнения не кэшируется.</li>
+ <li>Коды ответа, известные системе кэширования, которые рассматриваются как кэшируемые: {{HTTPStatus("200")}}, {{HTTPStatus("203")}}, {{HTTPStatus("204")}}, {{HTTPStatus("206")}}, {{HTTPStatus("300")}}, {{HTTPStatus("301")}}, {{HTTPStatus("404")}}, {{HTTPStatus("405")}}, {{HTTPStatus("410")}}, {{HTTPStatus("414")}}, {{HTTPStatus("501")}}.</li>
+ <li>Отсутствуют специальные заголовки в ответе, которые предотвращают кэширование: например, {{HTTPHeader("Cache-Control")}}.</li>
+</ul>
+
+<p>Обратите внимание, что некоторые некэшируемые запросы-ответы к определённым URI могут сделать недействительным (инвалидируют) предыдущие закэшированные ответы на тех же URI. Например, {{HTTPMethod("PUT")}} к странице pageX.html инвалидируют все закэшированные ответы {{HTTPMethod("GET")}} или {{HTTPMethod("HEAD")}} запросов к этой странице.</p>
+
+<p>Когда и метод запроса и статус ответа кэшированы, то ответ к запросу тоже может быть закэширован:</p>
+
+<pre>GET /pageX.html HTTP/1.1
+(…)
+
+200 OK
+(…)
+</pre>
+
+<p>Запрос {{HTTPMethod("PUT")}} не может быть закэширован. Более того, он инвалидирует закэшированные данные запросов к тому же URI, сделанных через {{HTTPMethod("HEAD")}} или {{HTTPMethod("GET")}}:</p>
+
+<pre>PUT /pageX.html HTTP/1.1
+(…)
+
+200 OK
+(…)
+</pre>
+
+<p>Специальный заголовок {{HTTPHeader("Cache-Control")}} в ответе может предотвратить кэширование:</p>
+
+<pre>GET /pageX.html HTTP/1.1
+(…)
+
+200 OK
+Cache-Control: no-cache
+(…)</pre>
+
+<h2 id="Материалы_для_изучения">Материалы для изучения</h2>
+
+<h3 id="Основные">Основные</h3>
+
+<ul>
+ <li>Определение <a href="https://tools.ietf.org/html/rfc7231#section-4.2.3">кэшируемых методов</a> в спецификации HTTP.</li>
+</ul>
+
+<h3 id="Технические">Технические</h3>
+
+<ul>
+ <li>Описание общих кэшируемых методов: {{HTTPMethod("GET")}}, {{HTTPMethod("HEAD")}}</li>
+ <li>Описание общих некэшируемых методов: {{HTTPMethod("PUT")}}, {{HTTPMethod("DELETE")}}, often {{HTTPMethod("POST")}}</li>
+</ul>