Содержание
HTTP | MDN
Протокол передачи гипертекста (Hypertext Transfer Protocol — HTTP) — это прикладной протокол для передачи гипертекстовых документов, таких как HTML. Он создан для связи между веб-браузерами и веб-серверами, хотя в принципе HTTP может использоваться и для других целей. Протокол следует классической клиент-серверной модели, когда клиент открывает соединение для создания запроса, а затем ждёт ответа. HTTP — это протокол без сохранения состояния, то есть сервер не сохраняет никаких данных (состояние) между двумя парами «запрос-ответ». Несмотря на то, что HTTP основан на TCP/IP, он также может использовать любой другой протокол транспортного уровня с гарантированной доставкой.
Узнайте, как использовать HTTP, благодаря учебникам и руководствам.
- Обзор HTTP
Основные свойства клиент-серверного протокола: что можно сделать и для чего он предназначен.
- HTTP-кеширование (HTTP Cache)
Кеширование — это важнейший инструмент для повышения производительности веб-сайтов.
Эта статья описывает разные виды кеша, а также использование HTTP-заголовков для конфигурации и управления кешированием.
- HTTP-куки (HTTP cookies)
Как работают куки, можно почитать в RFC 6265. При обслуживании HTTP-запроса сервер может отправить в ответе HTTP-заголовок
Set-Cookie
. После этого значение куки посылается клиентом с каждым запросом к этому серверу. Делается это в форме заголовка запросаCookie
. Дополнительно можно указать истечение срока куки, а так же ограничения для специфического домена или пути.- Контроль доступа (совместное использование ресурсов между разными источниками, HTTP access control (CORS))
Межсайтовые HTTP-запросы (кросс-сайтовые) — это HTTP-запросы к ресурсам, находящимся в домене, отличающемся от того, с которого производится запрос. Например, HTML-страница, загружаемая с домена А (
http://domaina.example
), запрашивает изображение с домена Б (http://domainb.
), используя тегfoo
img
(http://domainb.foo/image.jpg
). Это происходит постоянно в мире веба: страницы загружают различные ресурсы в кросс-сайтовой манере, включая стили (CSS), изображения, скрипты и другие ресурсы. CORS позволяет разработчикам сайтов контролировать межсайтовые запросы.- Эволюция HTTP
Краткое описание изменений, произошедших в HTTP, начиная с самых ранних версий, заканчивая новой HTTP/2 и далее.
- Принципы веб-безопасности Mozilla
Сборник советов для помощи в разработке защищённых веб-приложений.
- HTTP-сообщения (HTTP Messages)
Описывает тип и структуру разных видов сообщений HTTP/1.x и HTTP/2.
- Обычный сеанс HTTP
Показывает и описывает течение обычного сеанса HTTP.
- Управление подключениями в HTTP/1.x
Описывает три модели управления подключениями, доступными в HTTP/1.
x, их сильные и слабые стороны.
- Контроль предварительной загрузки DNS (Controlling DNS prefetching) (en-US)
Firefox, как и большинство других браузеров, выполняет предварительную загрузку DNS (DNS prefetching). Это действие, когда браузеры превентивно выполняют разрешение доменных имён (получают имена доменов) для ссылок, по которым пользователь может перейти, а также для ссылок на ресурсы, такие как картинки, CSS, JavaScript. Эта предварительная загрузка выполняется в фоновом режиме, так что вполне вероятно, что к моменту обращения к объектам в документе DNS уже получен. Это уменьшает задержки, когда, например, пользователь кликает на ссылку.
Глубже изучите HTTP с помощью справочников и документации.
Заголовки HTTP-сообщения используются для точного описания загружаемого ресурса или поведения сервера или клиента. Пользовательские заголовки можно добавить, используя
X-
префикс; другие перечислены в IANA registry, содержание которого в свою очередь определено в RFC 4229.IANA так же поддерживает регистр предложенных новых HTTP-заголовков.
- Методы HTTP-запроса
Различные операции, которые выполняются с HTTP:
GET
POST
OPTIONS
DELETE
TRACE
PATCH
- другие
- Коды ответа (HTTP response codes)
Коды ответа HTTP указывают на результат выполнения определённого HTTP-запроса. Ответы сгруппированы в пять категорий: информационные ответы, удачные ответы, перенаправления, ошибки клиента и ошибки сервера.
- Директивы CSP (en-US)
Поля заголовка ответа
Content-Security-Policy
(en-US) позволяют администраторам веб-сайтов контролировать ресурсы, которые браузер пользователя может загрузить на данную веб-страницу. За некоторым исключением, эти политики связаны с указанием сервера-источника и адресов доступа (обращения) скриптов.
Полезные инструменты и ресурсы для понимания и отладки HTTP.
- Инструменты разработчика Firefox
Сетевой монитор
- Mozilla Observatory
Проект, созданный в помощь разработчикам, системным администраторам и специалистам по безопасности для создания безопасных и надёжных сайтов.
- RedBot
Инструмент для проверки кеширования заголовков.
- Принципы работы современных веб-браузеров
Комплексная статья по внутренностям браузеров и потоку запросов через протокол HTTP. Это нужно понимать всем веб-разработчикам.
- Controlling DNS prefetching
- HTTP pipelining FAQ
- HTTP-куки (HTTP cookies)
- HTTP заголовки
- Basic access authentication
- HTTP контроль доступа (CORS)
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
Want to get more involved?
Learn how to contribute.
This page was last modified on by MDN contributors.
что это за протокол передачи данных и как он работает
HTTP – это протокол передачи информации в интернете, который расшифровывается как «протокол передачи гипертекста» (HyperText Transfer Protocol). Например, браузер отправляет единичный запрос на сервер, который в свою очередь обрабатывает его, формирует ответ и делится с браузером этим ответом – ресурсами в виде данных.
Для чего нужен HTTP
Благодаря взаимодействию клиента (локального компьютера с браузером) и сервера (высокопроизводительного специального компьютера) в сети можно передавать данные. Изначально HTTP использовался только для гипертекстовых документов, но сейчас он может передавать любую информацию. Гипертекстовые документы также могут содержать гиперcсылки, при нажатии на которые формируется новый http-запрос, в ответе на который может содержаться другой гипертекстовый документ. Таким образом мы перемещаемся по страницам в интернете.
Как он работает
HTTP-запрос состоит из трех элементов:
- стартовой строки, которая задает параметры запроса или ответа,
- заголовка, который описывает сведения о передаче и другую служебную информацию.
- тело (его не всегда можно встретить в структуре). Обычно в нем как раз лежат передаваемые данные. От заголовка тело отделяется пустой строкой.
Важнейшим элементом структуры запроса является стартовая строка. Благодаря ей сервер понимает, что от него хотят. Вот как она устроена:
Метод + URL + HTTP/Версия
Метод (иногда его называют HTTP-глаголом) – описывает, какое именно действие нужно совершить со страницей. Можно придумать самые разные, но стандартных методов девять: GET, HEAD, POST, PUT, DELETE,CONNECT, OPTIONS, TRACE, PATCH. Их функциональность раскрывается в названии, они позволяют получить данные (GET), отправить данные на сервер (POST), удалить (DELETE) или заменить часть (PATCH).
Чаще всего используют GET и POST, они нужны для чтения и отправки данных на сервер. Например вы зашли в соцсеть, увидели пост и решили оставить комментарий. Или зашли в интернет-магазин, решили что-то купить и оставили данные карты.
URL (Uniform Resource Locator) – единообразный идентификатор ресурса, идентифицирует ресурс и определяет его точное местоположение. Именно с помощью URL записаны ссылки в интернете.
В отличие от него URN не ведет к конкретному адресу, а просто определяет ресурс во множестве терминов. Потенциально это удобно, чтобы не перегружать интернет устаревшими или пропавшими ссылками.
Версия показывает, какую версию протокола нужно использовать в ответе сервера.
HTTP-ответ строится примерно по тому же принципу, что и запрос:
HTTP/Версия + Код состояния + Пояснение
Версия совпадает с версией в запросе.
Код состояния показывает статус запроса. Это трехзначное число, благодаря которому можно узнать, получен ли запрос, обработан ли он, какие ошибки есть. Например, одна из самых известных ошибок – 404 – сообщает о том, что сервер не нашел ресурс по адресу. Возможно, в запросе опечатка, ошибка или он не соответствует протоколу.
В пояснении стоит краткое описание ответа, например, к той же ошибке 404 может добавляться Not Found, что и раскрывает суть статуса запроса.
Чем отличаются HTTP и HTTPS
HTTPS – это расширение протокола HTTP, которое обеспечивает защиту передаваемых данных. Для сайта это важный параметр, так как шифрование позволяет ему обезопасить информацию, которую туда вводят люди (пароли, реквизиты кредитных карт), от хакерских атак. HTTP-протокол передает данные в открытую, поэтому их легко перехватить.
HTTPS защищен SSL-сертификатом. Благодаря ему уязвимые данные шифруются сначала на клиенте (браузере, например) в результате чего они становятся похожи на случайный набор символов и только потом отправляются на сервер. Каждый раз при HTTP-запросе шифр меняется, поэтому успеть подобрать ключ и украсть данные довольно трудно.
Сейчас защищенное соединение есть у большинства сайтов, причем многие браузеры по умолчанию уже работают только с https. Это легко проверить: в адресной строке браузера обычно стоит замок или она помечена зеленым цветом. Это показывает, что сайт подлинный и у него есть SSL-сертификат.
В этом разделе мы на примерах разбираем сложные айтишные термины. Если вы хотите почитать вдохновляющие и честные истории о карьере в IT, переходите в другие разделы.
HTTP – это протокол передачи информации в интернете, который расшифровывается как «протокол передачи гипертекста» (HyperText Transfer Protocol). Например, браузер отправляет единичный запрос на сервер, который в свою очередь обрабатывает его, формирует ответ и делится с браузером этим ответом – ресурсами в виде данных.
Благодаря взаимодействию клиента (локального компьютера с браузером) и сервера (высокопроизводительного специального компьютера) в сети можно передавать данные. Изначально HTTP использовался только для гипертекстовых документов, но сейчас он может передавать любую информацию. Гипертекстовые документы также могут содержать гиперcсылки, при нажатии на которые формируется новый http-запрос, в ответе на который может содержаться другой гипертекстовый документ. Таким образом мы перемещаемся по страницам в интернете.
HTTP-запрос состоит из трех элементов:
- стартовой строки, которая задает параметры запроса или ответа,
- заголовка, который описывает сведения о передаче и другую служебную информацию.
- тело (его не всегда можно встретить в структуре). Обычно в нем как раз лежат передаваемые данные. От заголовка тело отделяется пустой строкой.
Важнейшим элементом структуры запроса является стартовая строка. Благодаря ей сервер понимает, что от него хотят. Вот как она устроена:
Метод + URL + HTTP/Версия
Метод (иногда его называют HTTP-глаголом) – описывает, какое именно действие нужно совершить со страницей. Можно придумать самые разные, но стандартных методов девять: GET, HEAD, POST, PUT, DELETE,CONNECT, OPTIONS, TRACE, PATCH. Их функциональность раскрывается в названии, они позволяют получить данные (GET), отправить данные на сервер (POST), удалить (DELETE) или заменить часть (PATCH).
Чаще всего используют GET и POST, они нужны для чтения и отправки данных на сервер. Например вы зашли в соцсеть, увидели пост и решили оставить комментарий. Или зашли в интернет-магазин, решили что-то купить и оставили данные карты.
URL (Uniform Resource Locator) – единообразный идентификатор ресурса, идентифицирует ресурс и определяет его точное местоположение. Именно с помощью URL записаны ссылки в интернете.
В отличие от него URN не ведет к конкретному адресу, а просто определяет ресурс во множестве терминов. Потенциально это удобно, чтобы не перегружать интернет устаревшими или пропавшими ссылками.
Версия показывает, какую версию протокола нужно использовать в ответе сервера.
HTTP-ответ строится примерно по тому же принципу, что и запрос:
HTTP/Версия + Код состояния + Пояснение
Версия совпадает с версией в запросе.
Код состояния показывает статус запроса. Это трехзначное число, благодаря которому можно узнать, получен ли запрос, обработан ли он, какие ошибки есть. Например, одна из самых известных ошибок – 404 – сообщает о том, что сервер не нашел ресурс по адресу. Возможно, в запросе опечатка, ошибка или он не соответствует протоколу.
В пояснении стоит краткое описание ответа, например, к той же ошибке 404 может добавляться Not Found, что и раскрывает суть статуса запроса.
Читайте также: Как стать программистом с нуля?
HTTPS – это расширение протокола HTTP, которое обеспечивает защиту передаваемых данных. Для сайта это важный параметр, так как шифрование позволяет ему обезопасить информацию, которую туда вводят люди (пароли, реквизиты кредитных карт), от хакерских атак. HTTP-протокол передает данные в открытую, поэтому их легко перехватить.
HTTPS защищен SSL-сертификатом. Благодаря ему уязвимые данные шифруются сначала на клиенте (браузере, например) в результате чего они становятся похожи на случайный набор символов и только потом отправляются на сервер. Каждый раз при HTTP-запросе шифр меняется, поэтому успеть подобрать ключ и украсть данные довольно трудно.
Сейчас защищенное соединение есть у большинства сайтов, причем многие браузеры по умолчанию уже работают только с https. Это легко проверить: в адресной строке браузера обычно стоит замок или она помечена зеленым цветом. Это показывает, что сайт подлинный и у него есть SSL-сертификат.
404: Страница не найдена
Страница, которую вы пытались открыть по этому адресу, похоже, не существует. Обычно это результат плохой или устаревшей ссылки. Мы извиняемся за любые неудобства.
Что я могу сделать сейчас?
Если вы впервые посещаете TechTarget, добро пожаловать! Извините за обстоятельства, при которых мы встречаемся. Вот куда вы можете пойти отсюда:
Поиск
- Пожалуйста, свяжитесь с нами, чтобы сообщить, что эта страница отсутствует, или используйте поле выше, чтобы продолжить поиск
- Наша страница «О нас» содержит дополнительную информацию о сайте, на котором вы находитесь, WhatIs.com.
- Посетите нашу домашнюю страницу и просмотрите наши технические темы
Просмотр по категории
Сеть
-
транспортный уровеньТранспортный уровень — это уровень 4 модели взаимодействия открытых систем (OSI).
Отвечает за обеспечение…
-
полоса (полоса частот)В телекоммуникациях полоса частот, иногда называемая полосой частот, относится к определенному диапазону частот в …
-
HAProxyHAProxy — это высокопроизводительный балансировщик нагрузки с открытым исходным кодом и обратный прокси-сервер для приложений TCP и HTTP.
Безопасность
-
постквантовая криптографияПостквантовая криптография, также известная как квантовое шифрование, представляет собой разработку криптографических систем для классических компьютеров…
-
деинициализацияДеинициализация — это часть жизненного цикла сотрудника, в ходе которой лишаются прав доступа к программному обеспечению и сетевым службам.
-
Требования PCI DSS 12Требования PCI DSS 12 представляют собой набор мер безопасности, которые предприятия должны внедрить для защиты данных кредитных карт и соблюдения .
..
ИТ-директор
-
Agile-манифестThe Agile Manifesto — это документ, определяющий четыре ключевые ценности и 12 принципов, в которые его авторы верят разработчикам программного обеспечения…
-
Общее управление качеством (TQM)Total Quality Management (TQM) — это система управления, основанная на вере в то, что организация может добиться долгосрочного успеха, …
-
системное мышлениеСистемное мышление — это целостный подход к анализу, который фокусируется на том, как взаимодействуют составные части системы и как…
HRSoftware
-
вовлечения сотрудниковВовлеченность сотрудников — это эмоциональная и профессиональная связь, которую сотрудник испытывает к своей организации, коллегам и работе.
-
кадровый резервКадровый резерв — это база данных кандидатов на работу, которые могут удовлетворить немедленные и долгосрочные потребности организации.
-
разнообразие, равенство и инклюзивность (DEI)Разнообразие, равенство и инклюзивность — термин, используемый для описания политики и программ, которые способствуют представительству и …
Обслуживание клиентов
-
требующий оценкиОценка потребностей — это систематический процесс, в ходе которого изучается, какие критерии должны быть соблюдены для достижения желаемого результата.
-
точка взаимодействия с клиентомТочка соприкосновения с покупателем — это любой прямой или косвенный контакт покупателя с брендом.
-
устав обслуживания клиентовУстав обслуживания клиентов — это документ, в котором описывается, как организация обещает работать со своими клиентами наряду с …
HTTP | MDN
Протокол передачи гипертекста (HTTP) — это протокол прикладного уровня для передачи гипермедиа-документов, таких как HTML. Он был разработан для связи между веб-браузерами и веб-серверами, но может использоваться и для других целей. HTTP следует классической модели клиент-сервер, когда клиент открывает соединение для отправки запроса, а затем ждет, пока не получит ответ. HTTP — это протокол без сохранения состояния, что означает, что сервер не сохраняет никаких данных (состояния) между двумя запросами.
Узнайте, как использовать HTTP с помощью руководств и руководств.
- Обзор HTTP
Основные характеристики протокола клиент-сервер: что он может делать и как его использовать.
- Кэш HTTP
Кэширование очень важно для быстрых веб-сайтов. В этой статье описываются различные методы кэширования и способы управления ими с помощью заголовков HTTP.
- Файлы cookie HTTP
Принцип работы файлов cookie определяется RFC 6265. При обслуживании HTTP-запроса сервер может отправить
Set-Cookie
Заголовок HTTP с ответом.Затем клиент возвращает значение файла cookie с каждым запросом к одному и тому же серверу в форме заголовка запроса
Cookie
. Срок действия файла cookie также может быть установлен на определенную дату или ограничен определенным доменом и путем.- Совместное использование ресурсов между источниками (CORS)
Межсайтовые HTTP-запросы — это HTTP-запросы для ресурсов из домена, отличного от домена ресурса, отправляющего запрос. Например, HTML-страница из домена А (
http://domain.example/
) делает запрос на изображение в домене B (http://domainb.foo/image.jpg
) через элементimg
. Сегодня веб-страницы очень часто загружают межсайтовые ресурсы, включая таблицы стилей CSS, изображения, сценарии и другие ресурсы. CORS позволяет веб-разработчикам контролировать, как их сайт реагирует на межсайтовые запросы.- Подсказки HTTP-клиента
Подсказки клиента — это набор заголовков ответов, которые сервер может использовать для упреждающего запроса информации от клиента об устройстве, сети, пользователе и настройках пользовательского агента.
Затем сервер может определить, какие ресурсы отправлять, на основе информации, которую клиент выбирает для предоставления.- Эволюция HTTP
Краткое описание изменений между ранними версиями HTTP, современным HTTP/2, зарождающимся HTTP/3 и более поздними версиями.
- Руководство по веб-безопасности Mozilla
Сборник советов, которые помогут операционным группам создавать безопасные веб-приложения.
- HTTP-сообщения
Описывает тип и структуру различных типов сообщений HTTP/1.x и HTTP/2.
- Типичный сеанс HTTP
Показывает и объясняет ход обычного HTTP-сеанса.
- Управление соединением в HTTP/1.x
Описывает три модели управления соединениями, доступные в HTTP/1.x, их сильные и слабые стороны.
Просмотрите подробную справочную документацию по HTTP.
Заголовки сообщений HTTP используются для описания ресурса или поведения сервера или клиента.
Поля заголовков хранятся в реестре IANA. IANA также ведет реестр предлагаемых новых заголовков HTTP-сообщений.
- Методы HTTP-запроса
Различные операции, которые можно выполнить с помощью HTTP:
GET
,POST
, а также менее распространенные запросы, такие какOPTIONS
,DELETE
илиTRACE
.- Коды ответов состояния HTTP
Коды ответа HTTP указывают, был ли успешно выполнен конкретный HTTP-запрос. Ответы сгруппированы в пять классов: информационные ответы, успешные ответы, перенаправления, ошибки клиента и ошибки сервера.
- Директивы CSP
Поля заголовка ответа
Content-Security-Policy
позволяют администраторам веб-сайтов контролировать ресурсы, которые пользовательскому агенту разрешено загружать для данной страницы. За некоторыми исключениями, политики в основном включают указание источников серверов и конечных точек сценариев.