HTTP - протокол передачи данных, созданный для передачи гипертекста. Основой этого пртокола является технология "клиент-сервер", в которой клиент посылает запрос серверу, а тот , возвращает результат обработки запроса клиенту.
Для инициирования обмена данными клиент отправляет серверу URI (Uniform Resource Identifier), в ответ на который сервер вернет клиенту ресурс, на который ссылается данный URI. В качестве возвращаемого объекта может выступать как файл, физически расположенный на сервере, так и нечно абстрактное, например, поток данных, генерируемый скриптом. Возможность указать в запросе ряд параметров приема-передачи данных (язык, кодировка, формат данных) делает протокол HTTP по-настоящему гибким и эффективным не только для передачи текстовых данных (для передачи которых он, собственно, и проектировался), но и для обмена двоичными данными.