ТЕХНОЛОГИИ ИНТЕРНЕТ

Практически все услуги в Интернет предоставляются по архитектуре клиент-сервер. Сайты размещаются на веб-серверах, откуда они стают доступными для Интернет.

  •  Сервер — это система обслуживания запросов клиентов (происходит от английского serve — служить). Обслуживание происходит на 2 уровнях: апраратном и программном. В Интернет-маркетинге слово сервер используется в значении “программа”.
    • Сервер(оборудование) — это компъютер и/или специализированное оборудование для выполнения сервисных задач. Сервисные задачи выполняются путем выполнения сервисного программного обеспечения (в основном — серверов(программ)).
    • Сервер(программа) — программа, которая обрабатывает запросы клиента и в ответ предоставляет доступ к услугам, данным и контенту. В большинстве случаев, говоря “сервер” подразумевают именно это понятие. Формат вопросов и ответов определяется протоколами. Серверы различаются по выполняемым функциям: серверы маршрутизации, серверы сетевых служб, информационных служб, доступа к данным, файловые, обмена сообщениями, удаленного доступа, веб-серверы и игровые и т д.
  • Apache — свободный веб-сервер, поддерживающий множество операционных систем: Linux, BSD, Mac OS, Microsoft Windows. Популярность обусловлена высокой надежностью и гибкостью. Конфигурация сервера проводится с помощью текстовых файлов:
    • файл httpd.conf — управление процессом Apache в целом, параметры главного сервера и установки для виртуальных хостов.
    • файл .htaccess — управление доступом к каталогам, переназначение типов файлов, изменение URL-адресов (перенаправление), контроль кэша. Файл действует в рамках каталога (и его подкаталогов), в котором он размещен.
    • .htpasswd — сохранение имен пользователей и их паролей.
  • Nginx — веб-сервер и почтовый сервер, работающий на Unix-подобных ОС. Преимущества — простота, скорорсть и надежность.
  • Microsoft IIS  — набор серверов (основной — веб-сервер), работающих на семействе ОС Windows NT.
  • Журнал сервера (лог сервера) — файл с записями о работе сервера. В файле последовательно создаются записи после каждого действия пользователей (браузеров, поисковых роботов), что позволяет владельцу просматривать и анализировать статистику использования сайта.

127.123.15.33 — — [10/Jun/2009:10:00:00 +0000] «GET /example.html HTTP/1.1» 200 — «http://example.com» «Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)», где:

  • 127.123.15.33 — IP-адрес клиента
  • [10/Jun/2009:10:00:00 +0000] — время действия
  • «GET /example.html HTTP/1.1» — вид запроса, запрашиваемый документ и версия HTTP протокола
  • 200 — код ответа сервера
  • http://example.com — URL, на который осуществлен переход
  • Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1) — браузер пользователя

По умолчанию на сервере Apache журнал сервера расположен по адресу:
/var/log/apache/access.log

  • Протокол (Коммуникационный) — система правил обмена данными между двумя устройствами. В протоколах описываются различные правила проверки на ошибки передачи данных, методы сжатия, кодирования данных и т д. Классификация протоколов на уровни выполняется по их функциям. Типичная классификация описывается моделью OSI. Наиболее распостраненные протоколы, использующиеся в сети Интернет:

 

  • TCP / IP — стэк протоколов для разбивки и соединения сообщений на части и их передачи с контролем получения. Популярность постепенно переходит от IPv4 к IPv6.
      • IP-адрес — уникальный адрес узла в сети Интернет или локальной.

    • Адреса IPv4 задаются в форме четырех десятичных чисел, разделенных точкой.

128.141.214.251

  • Адреса IPv6 задаются в форме восьми четырёхзначных шестнадцатеричных чисел, которые разделяются двоеточием

 

0db8:2001:09d7:11a3:07a0:8a2e:1f34:765d

  • WHOIS(базируется на TCP)протокол хранения и получения информации о владельцах доменных имен: имя, номер телефона, адрес и другие.

  • HTTP, HTTPs — протоколы передачи данных от сервера к пользователю по запросу. Чаще всего используется для загрузки веб страниц браузером. HTTPs — это расширение HTTP, которое обеспечивает дополнительную безопасность за счет шифрования данных (инкапсулируются криптографические протоколы SSL или TLS). Именно поэтому в 2015 году Google причислил факт использования HTTPs к факторам ранжирования сайтов. Роль HTTP-клиента выполняет браузер, сервера — веб сервер (Apache, nginx, и т д).
    • Коды состояния HTTP — часть ответов сервера при запросах по данному протоколу. Они помогают быстро анализировать ответ веб-сервера

 

  • 1XX — информационные ответы;
  • 2XX — “успех” (популярный вариант 200 OK — успешный запрос);
  • 3XX — “перенаправление” (популярные коды: 301 Moved Permanently — “страницу перемещено навсегда”, 302 Moved Temporarily — “перемещено временно”). Перенаправление используется для указания страницы, которую следует считать основной. Применяется когда адрес страницы изменено, несколько страниц объеденено в одну или одна страница доступна по нескольким адресам одновременно. Для того, чтобы указать новый или предпочтительный адрес страницы используется перенаправление.Таким образом и пользователи и поисковые роботы будут направлены сервером на новый адрес. В случае, если на старый адрес были построены ссылки, вес также перейдет на новый адрес практически полностью. Использование кода 301 является рекомендуемым.
  • 4XX — “ошибка клиента”. (популярный код 404 Not Found — “не найдено” — свидетельствует о том, что страница по указанному адресу отсутствует.
  • 5XX  “ошибка сервера”
  • HTTP Cookie (Файлы Cookie) — данные о опредыдущей активности пользователя на сайте. Это файлы, отсылаемые от сервера к браузеру и назад, с помощью которых реализован механизм сохранения состояния сессии. Например, сохранение языка, валюты или факта авторизации реализуются с помощью cookies.
  • HTTP/2 — новая версия протокола HTTP, главная задача которой — обеспечение единственного соединения браузера и сайта. Переход на HTTP/2 приводит к большей производительности и экономии ресурсов сети.

FTPFile Transfer Protocol — протокол передачи файлов средставими TCP сетей, в том числе и Интернет. Протокол используется для подключения к веб-серверу для записи, изменения и удаления его файлов. Чаще всего для подключения к серверу требуется хост, логин и пароль, но бывают и исключения, когда авторизация не требуется. Чаще всего для подключений используется специализированное ПО, но можно подключаться и с помощью браузера.

 

ftp://пользователь:пароль@хост:порт/путь

DNSDNSDomain Name System — протокол для получения информации о доменах. Основная функция — интерпритация доменных имен в IP адреса.

    Доменное имя— текстовый идентификатор сайта (или другой административной единицы сети Интернет). Совокупность доменных имен функционирует с помощью правил и процедур DNS.
  • Регистратор доменных имен — коммерческая организация, которая занимается регистрацией и продлением работы доменных имен первого уровня: как международных, так и для определенной страны.
  • URLUniform Resource Locator — единый указатель ресурса. Это общепринятый способ указания адреса ресурса.
  • протокол://логин:пароль@хост:порт/путь?параметр#якорьНо чаще всего, говоря об URL, подразумевается именно адрес страницы или файла в Интернет (т.е. протокол — HTTP, (или HTTPS),порт — стандартный  и доступ не требутеся):http://хост/путь?параметр#якорьЗдесь:
    • хост — доменное имя сайта или его IP адрес
    • путь — относительный путь к файлу или каталогу нижнего уровня на сервере
    • параметр — передаваемый на сервер параметр, который влияет на отображение страницы/файла

    якорь — уточнение раздела страницы, на который нужно перейти

  • https://youtu.be/0ycAnRIW4Ew?t=8s , где:
    • https — протокол
    • youtu.be — хост
    • 0ycAnRIW4Ew — путь
    • t — параметр, указывающий начальное время воспроизведения видео
    • 8s — значение параметра t

  • Trailing Slash — «тянущийся слэш» — знак «/» в конце URL. Традиционно trailing slash применялся для указания директорий, а его отсутствие указывало на наличие файла по указанному адресу. Современные поисковые системы не критичны к этому разграничению. С точки зрения пользователя целесообразно отображать аналогичное содержимое для обеих версий URL (с и без «/»). При этом для решения проблемы дублирующегося содержимого традиционно применяются перенеправления на уровне сервера (код ответа 301).

 

  • Порт — конечная точка коммуникации. Он определяется 16-ти битным числом, которое называется номером порта и используется для адресации на уровне приложения в рамках одного устройства.
  • Proxy сервер — компьютер, предоставляющий услуги непрямого доступа к сети своим пользователям. Пользователь обменивается информацией с другими серверами не напрямую, а через proxy сервер, который в свою очередь либо выполняет необходимые подключения самостоятельно, либо выдает кэшированные данные. Примеряются proxy серверы для обхода ограничений доступа, анонимизации и т д.
    • Обратный прокси сервер — прокси сервер, который находится внутри частной сети и перенаправляет запросы клиентов вне частной сети на серверы, находящиеся внутри частной сети.
    • CDN — Content Delivery Network — глобальная сеть прокси серверов, цель которой — ускорение загрузки контента у конченых пользователей.
  • VPN — Virtual Private Network — виртуальная частная сеть — это технология, позволяющая расширить приватную сеть используя публичные сети (например Интернет). Для защиты информации применяется туннелирование, криптография и другие технологии. Это позволяет использовать VPN для доступа к корпоративным сетям, анонимизации и обхода орграничений доступа.
  • POP3 — Post Office Protocol Version 3 — стандартный протокол прикладного уровня для получения почты с почтового сервера. Главный недостаток в том, что POP3 просто загружает письмо с почтового сервера (и чаще всего удаляет его после этого). Статус каждого письма сохраняется на уровне клиента,а не акаунта.

 

  • IMAP — Internet Message access protocol — современный почтовый протокол для получения почты. Протокол двухсторонний и дает возможность согласованного доступа к ящику при помощи различных устройств, что выгодно выделяет его от POP3.

 

  • SMTP — Simple Mail Transfer Protocol — протокол для отправки почты на почтовый сервер.
  • TLS,SSL — криптографические протоколы. Главная задача — обеспечение безопасной передачи данных. Это достигается с помощью симметрического шифрования передаваемых данных и ассиметрическое — для аутентификации.
    • SSL/TLS сертификаты — это файлы, которые устанавливаются на сервер, они содержат информацию о владельце сертификата а также способ шифрования. Для внутреннего использования можно применять бесплатные самозаверенные сертификаты. Публичное использование — невозможно, поскольку пользователь получает сообщение, что сертификат сайта не проверен. Платные сертификаты проходят проверку в центрах сертификации, после чего их можно использовать без сообщений об ошибке. Это защищает все ключевые данные пользователя (например платежные данные при совершении покупки).

 

  • ASP — среда разработки от Microsoft для создания веб-приложений и сервисов, которые выполняются на стороне сервера.
  • CGI — интерфейс взаимодействия веб-сервера с внешним приложением.
  • SSI — язык динамической сборки web-страниц. Страницы собираются с отдельных компонентов на стороне сервера и результирующий файл передается  клиенту. Технология позволяет добавлять тексты или html-компоненты на любое количество страниц сервера. Аналогичную функцию выполняет выражение PHP: include.