Url структура – URL адрес — что это такое и как узнать урл веб-страницы сайта, изображения или видео | Создание сайтов и заработок в сети

Содержание

Изучаем URLы и их структуру — Изучение веб-разработки

Данная статья описывает Единый локатор ресурсов или Uniform Resource Locators (URLs), объясняет, что это такое, и опиcывает его структуру. 

Введение

Наряду с понятиями гипертекста и протокола HTTP, понятие URL является одной из основных концепций Всемирной паутины. Это механизм, используемый браузерами для получения любого опубликованного во Всемирной сети ресурса.

URL обозначает Uniform Resource Locator. URL это лишь адрес, который выдан уникальному ресурсу в интернете. В теории, каждый корректный URL ведет на уникальный ресурс. Такими ресурсами могут быть HTML-страница, CSS-файл, изображение и т.д. На практике, существуют некоторые исключения, когда, например, URL ведет на ресурс, который больше не существует или который был перемещён. Поскольку ресурс, доступный по URL, а также сам URL обрабатываются веб-сервером, его владелец должен внимательно следить за размещаемыми ресурсами и связанными с ними URL.

Активное обучение

There is no active learning available yet. Please, consider contributing.

Подробная информация

Основы: анатомия URL

Вот несколько примеров URL:

https://developer.mozilla.org
https://developer.mozilla.org/en-US/docs/Learn/
https://developer.mozilla.org/en-US/search?q=URL

Каждый из этих URLs могут быть напечатаны в адресной строке браузера, чтобы заставить его загрузить связанную страницу (ресурс).

URL состоит из различных частей, некоторые из которых являются обязательными, а некоторые — факультативными. Рассмотрим наиболее важные части на примере:

http://www.example.com:80/path/to/myfile.html?key1=value1&key2=value2#SomewhereInTheDocument
http:// это протокол. Он отображает, какой протокол браузер должен использовать. Обычно это HTTP-протокол или его безопасная версия — HTTPS. Интернет требует эти 2 протокола, но браузеры часто могут использовать и другие протоколы, например mailto: (чтобы открыть почтовый клиент) или
ftp:
 для запуска передачи файлов, так что не стоит удивляться, если вы вдруг увидите другие протоколы.
www.example.com это доменное имя. Оно означает, какой веб-сервер должен быть запрошен. В качестве альтернативы может быть использован и IP-адрес, но это делается редко, поскольку запоминать IP сложнее, и это не популярно в интернете.
:80 это порт. Он отображает технический параметр, используемый для доступа к ресурсам на веб-сервере. Обычно подразумевается, что веб-сервер использует стандартные порты HTTP-протокола (80 для HTTP и 443 для HTTPS) для доступа к своим ресурсам. В любом случае, порт — это факультативная составная часть URL.
/path/to/myfile.html это адрес ресурса на веб-сервере. В прошлом, адрес отображал местоположение реального файла в реальной директории на веб-сервере. В наши дни это чаще всего абстракция, позволяющая обрабатывать адреса и отображать тот или иной контент из баз данных.
?key1=value1&key2=value2 это дополнительные параметры, которые браузер сообщает веб-серверу. Эти параметры — список пар ключ/значение, которые разделены символом &. Веб-сервер может использовать эти параметры для исполнения дополнительных команд перед тем как отдать ресурс. Каждый веб-сервер имеет свои собственные правила обработки этих параметров и узнать их можно, только спросив владельца сервера.
#SomewhereInTheDocument это якорь на другую часть того же самого ресурса. Якорь представляет собой вид «закладки» внутри ресурса, которая переадресовывает браузер на «заложенную» часть ресурса. В HTML-документе, например, браузер может переместиться в точку, где установлен якорь; в видео- или аудио-документе браузер может перейти к времени, на которое ссылается якорь. Важно отметить, что часть URL после #, которая также известна как идентификатор фрагмента, никогда не посылается на сервер вместе с запросом.
Примечание: Есть и другие составлные части и правила, касающиеся URL, но обычно они не используются ни пользователями, ни разработчика. Поэтому не стоит о них беспокоиться, вам не обязательно их знать, чтобы формировать работоспособные URL.

Вам стоит представлять URL как обычный почтовый адрес: протокол обозначает почтовый транспорт, который вы собираетесь использовать,доменное имя — это город, порт — это почтовый индекс; адрес — это номер дома;параметры представляют собой дополнительную информацию, как, например, номер квартиры; и, наконец, якорь представляет собой конкретного получателя, которому вы адресуете своё письмо.

Как использовать URL

Каждый URL может быть напечатан напрямую в адресной строке браузера, чтобы сразу получить запрошенный ресурс. Но это только вершина айсберга!

Язык HTML — который будет обсуждать позже — позволяет активно использовать URL для:

  • создания ссылок на другие документы с помощью тега <a>;
  • связывания документа с его дополнительными файлами, например с помощью тегов <link> или <script>;
  • отображения медиа-элементов, например изображений (с помощью тега <img>), видео (с помощью тега <video>), звуков и музыки (с помощью тега <audio>) и так далее;
  • отображения других HTML-документов внутри текущего с помощью тега <iframe>.

Другие технологии, такие как CSS или JavaScript, также активно используют URL, так что это реально основа веба.

Абсолютные и относительные URL

Все, что мы изучали выше — это абсолютные URL. Но так же существуют и относительные URL. Изучим это.

Обязательные части URL во многом зависят от контекста, в котором используется URL. В адресной строке браузера URL не имеет никакого контекста, так что приходится вводить полный (или

абсолютный) URL, такие как мы рассматривали выше. Обычно вам не требуется вводить протокол (браузер подставляет HTTP по умолчанию) и порт (который нужен только в том случае, если сервер использует нестандартный порт), но остальные части URL всё равно необходимы.

Когда URL используется в документе, например в HTML-странице, ситуация отличается. Потому что браузер уже знает URL текущего документа и он может использовать эти сведения для дополнения недостающих частей любого адреса, указанного в документе. Простейший пример относительного URL — указание только адресной части URL. А если адрес в URL начинается с символа "/«, браузер запросит ресурс от корня сервера, без отсылки к контексту текущего документа.

Разберем это на примерах.

Примеры абсолютных URL
Полный URL (такой же, как обсуждали в начале статьи)
https://developer.mozilla.org/en-US/docs/Learn
Скрыт протокол
//developer.mozilla.org/en-US/docs/Learn

В этом случае браузер использует тот же протокол, что использовался для загрузки текущего документа.

Скрыт домен
/en-US/docs/Learn

Это наиболее частый пример использования аболютного URL в HTML-документе. Браузер использует тот же протокол и то же доменное имя, как у текущего документа. Примечание: не возможно скрыть домен, не скрывая при этом протокол, только вместе.

Примеры относительных URL

Для лучшего понимания следующих примеров, давайте договоримся, что мы обращаемся к URL из документа, который опубликован по адресу: https://developer.mozilla.org/en-US/docs/Learn

Дочерние ресурсы
Skills/Infrastructure/Understanding_URLs
Поскольку URL не начинается с  /, браузер сделает попытку найти документ в поддиректории относительно текущего документа. В данном примере будет запрошен этот URL:
https://developer.mozilla.org/en-US/docs/Learn/Skills/Infrastructure/Understanding_URLs
Назад по дереву папок
../CSS/display

В этом случае, мы используем команду ../  — унаследованную из файловой системы UNIX — чтобы сказать браузеру, что он должен подняться на 1 директорию вверх. Соответственно, здесь мы хотим открыть URL: https://developer.mozilla.org/en-US/docs/Learn/../CSS/display, который может быть упрощен до вида: https://developer.mozilla.org/en-US/docs/CSS/display

Семантические URL

Помимо своего технического значения, URL представляют собой человеко-читаемые записи о местоположении документов на веб-ресурсе. Они могут быть запомнены и любой может ввести их в адресную строку своего браузера. Веб создавался для людей и распространённой практикой является принцип записи URL, который называется семантические URL.  Семантические URL используют в своём составе слова, значение которых может быть понято любым человеком, даже тем, кто не разбирается в технических нюансах.

Семантика, разумеется, плохо распознаётся компьютерами. Вы наверняка видели URL, которые выглядят как куча случайных символов. Но у семантических URL есть много преимуществ:

  • Ими легче управлять.
  • Они дают понять пользователю, что находится по данному URL даже без перехода на страницу.
  • Поисковые системы могут использовать семантику для улучшения классификации страниц.

Следующие шаги

Структура и виды URL

Все страницы, размещенные в сети Интернет, имеют свои гиперссылки. Поэтому URL является основной составляющей всех сайтов, без которой пользование ресурсами просто невозможно.

В таком случае следует разобраться, что представляет собой УРЛ и для чего необходим этот элемент. При этом стоит учесть, что он имеет определенную структуру и несколько параметров. Подробное описание приведено ниже.

Что такое URL

Аббревиатуру URL можно расшифровать как Uniform Resource Locator. Данная фраза дословно переводится как единый указатель ресурсов. Кроме того, его называют единообразным локатором или универсальным указателем ресурса. В произношении звучит как «ю-ар-эл» или же «у-эр-эл». Зачастую аббревиатура в разговорной речи произносится как «УРЛ».

Структура и виды URL

Структура и виды URL

Изобрел единый указатель ресурсов Тим Бернерс-Ли. Случилось это в 1990 году в Швейцарии. Над этим проектом Бернерс-Ли работал в стенах Европейского совета, специализирующегося на ядерных исследованиях.

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

Общая структура

Разберемся подробней, что же представляет собой URL. Также можно сказать, что это путь к какому-нибудь файлу.

Это может быть как:

  • видео;
  • текстовый документ;
  • фото;
  • HTML,
  • аудио.

Такой адрес присвоен всем документам, которые расположены в Интернете. Используя единообразный локатор, сервер предоставляет доступ к хранящимся на нем файлам всем пользователям сети.

Структура и виды URL

Структура и виды URL

Существует специальный стандарт, согласно которому и должен выглядеть Uniform Resource Locator к какому-либо документу.

Этот шаблон применяется для доступа:

  • к различным файлам и сайтам по протоколам https и http;
  • для передачи данных на портал по протоколу ftp.

Кроме того, УРЛ-адрес имеет определенную структуру, которая состоит из нескольких основных параметров.

Параметры адреса

Каждый из данных параметров является важной составляющей адресной ссылки.

Структура и виды URL

Структура и виды URL

При этом все они имеют своё значение, а именно:

  • схема – это и есть протокол для передачи информации. С его помощью можно обратиться к нужному ресурсу.
  • логин и пароль – они необходимы для того, чтобы правильно определить права пользователя для доступа на конкретную страницу Интернет-портала. В протоколе http эта информация не указывается.
  • собака – это разделитель, который представляет собой @. Собака, как правило, указывается только вместе с логином и паролем.
  • хост – это и есть доменное имя. Реже, это может быть IP-адрес какого-то ресурса, к которому пользователю необходимо получить доступ.
  • порт – данный параметр указывается достаточно редко. Когда пользователь обращается к порталу или любому другому файлу, который имеется на сайте, сразу же присваивается определенное значение, как правило, это 80 или 8080.
  • URL-путь – путь к месту, где находится тот или иной файл.
  • параметры – следуют сразу после имени файла и пишутся после знака вопроса (?). Для разделения этих параметров используется знак амперсанда (&). Это может выглядеть так:

    Структура и виды URL

    Структура и виды URL

Параметров может быть несколько. Используя языковое серверное программирование, они обрабатываются в системе.

  • якорь – это специальная строка, в которой могут иметься как буквенные символы, так и цифры. С помощью якоря ссылаются на определенное место на сайте, который открывается. Благодаря этому пользователь попадается не на главную страницу портала, а сразу в нужное место. Якорь располагается в единообразном локаторе сразу после знака решетки (#).

Кодировка в УРЛ

Для URL-адресов, как правило, используют множество кодировок. В случае если перекодирование исключено, можно воспользоваться только обозначенным количеством символов.

Для этого используют:

  • цифры от 0 до 9;
  • строчные буквы от а до z;
  • заглавные буквы от A до Z;
  • в том числе [ _ ];
  • [-].

Для того, чтобы не было ошибок, файлы, размещенные на сайте необходимо именовать в нижнем регистре. Кроме того, путь к ним следует указывать таким же образом и писать его маленькими буквами.

Кодирование данных в цифры, буквы и некоторые знаки латинского алфавита, связывают с тем, что физические устройства ограничены в передаче символов. Поэтому они могут распознавать только алфавитно-цифровые знаки.

Структура и виды URL

Структура и виды URL

В Uniform Resource Locator подобное кодирование используется для того чтобы передать символы, которые изначально находятся в формате Unicode (UTF-8) в последовательность, состоящую из двух байт. После этого они будут записаны в шестнадцатеричном виде. То есть такой метод допустим только для русских букв.

Для того, чтобы разделить каждый байт применяется знак %. Используя данное кодирование, строка «книга» приобретет вид, такой как %D0%BA%D0%BD%D0%B8%D0%B3%D0%B0. Таким образом, букве «к» соответствует последовательность знаков %D0%BA. Такая кодировка всегда используется для того, чтобы указать путь в УРЛ к документам, папкам и различным файлам.

Например, такая ссылка: Структура и виды URL

Структура и виды URL

Преобразуется в такую: Структура и виды URL

Структура и виды URL

Применение ЧПУ

Подобный вид является крайне неудобным и непонятным для восприятия. Поэтому в таких случаях используется ЧПУ УРЛ. Иными словами – это человеко-понятный единообразный локатор.

При человеко-понятном Uniform Resource Locator слова, содержащиеся в ссылке, будут написаны транслитом. То есть русские буквы преобразуются в их аналоги, но только уже на латинице. Для этого используется метод сопоставления. В результате чего, каждой исходной букве будет подобрано несколько или один символ на латинском языке.

Структура и виды URL

Структура и виды URL

Подобные ссылки, формирующиеся методом транслитерации, выполняются по специальным стандартам.

Из них существует:

  • стандарт ISO 9-95;
  • ГОСТ 16876-71.

Между ними разницы практически никакой не наблюдается. Однако есть некоторые отличия. Так, например, русская буква «х» при использовании стандарта ISO 9-95 преобразовывается в «х» — икс. Эта же буква при транслитерации через ГОСТ 16876-71 будет иметь вид «h» — аш.

Применим метод транслитерации для photographer.ru/всё для фотографа

В результате она будет иметь вид:Структура и виды URL

Структура и виды URL

Динамические единообразные локаторы

Существуют также УРЛ, которые носят название динамические.

В подобных единых указателях ресурса могут присутствовать такие допустимые символы в адресе как:

Они необходимы для того, чтобы создать параметр структуры адреса. Такие URL образовываются из-за скриптов, которые имеются на Интернет-портале. Динамические ссылки могут выглядеть как:

Структура и виды URL

Структура и виды URL

В случае если в адресе страницы содержится якорь, он будет иметь подобный вид:

Структура и виды URL

Структура и виды URL

Таким образом, в строке образовался еще один параметр #231razdel, так называемый якорь. С подобным часто имеют дело создатели сайтов и контента. Якорь позволяет сразу же оказаться именно в той части портала, куда указывает этот параметр. Подобные Uniform Resource Locator нередко применяются для страниц, где содержится большое количество информации для упрощения навигации.

Канонические адресные ссылки

Канонический URL используется для оптимизации определения рейтинга сайтов с похожим или даже одинаковым содержанием, которые находятся на разных адресах.

Часто бывает, что одной странице присвоено несколько разных УРЛ-адресов.

Такими ресурсами могут быть:

  1. интернет-магазины;
  2. порталы, где применяется автоматическая система управления данными.

Дублирование универсальных указателей ресурсов происходит из-за распространения контента. Это означает что, одинаковый материал можно будет найти по разным ссылкам.

Как правило, дублирование происходит по таким причинам:

  • адреса страниц, на которых находится один и тот же товар могут отличаться, в случае если они были созданы в разных сессиях или по отличающимся запросам в поисковике;
  • в блогах установлена система, которая способствует сохранению нескольких отличающихся адресов для одного сообщения, если оно было размещено несколько раз в разных разделах;
  • сервер автоматически отображает одинаковое содержание для протокола https или же для субдомена www;
  • если в блоге находится сообщение, которое распространяется на других ресурсах.

Видео: Термин URL

Относительные и абсолютные ссылки

Абсолютная ссылка должна иметь стандартный вид УРЛ. В ней должны присутствовать:

  • протокол, используемый для передачи информации;
  • доменное имя ресурса;
  • путь к необходимому файлу.

Такие ссылки применяются, когда возникает необходимость сослаться на внешние Интернет-порталы. Для переходов внутри ресурса существуют относительные ссылки. Они более короткие и при этом не утяжеляют и не загромождают основной код сайта.

Как сделать URL ссылку

Рассмотрим пример, как создать универсальный указатель ресурса для блога.

Перед тем как создать блог, необходимо придумать для него уникальное название. Для того, чтобы зайти в него посетители ресурса должны будут ввести этот УРЛ в адресную строку браузера.

Советы как правильно создать ссылку:

  • адрес должен выглядеть подобным образом:

    Структура и виды URL

    Структура и виды URL
  • выбирая единообразный локатор, следует помнить, что использовать для него можно: 
  1. только цифры;
  2. буквенные символы;
  3. дефисы;
  • так как на данном сайте уже существует множество разнообразных блогов, выбор адреса потребует времени и творческого подхода.

В случае если возникла необходимость изменить уже созданную УРЛ-ссылку рекомендуется выполнить следующие действия:

  1. зайти в личный аккаунт на портале blogger.com;
  2. попасть в раздел Настройки;
  3. нажать на Основные;
  4. в поле «Адрес блога» можно внести нужные изменения;
  5. после чего следует все сохранить.

При изменении своего адреса стоит помнить о том, что прежняя ссылка освобождается и её может использовать другой пользователь.

В статье было выяснено, что представляет собой единый указатель ресурсов. Также было дано его описание и применение.

URI — сложно о простом (Часть 1) / Habr

Привет хабр!

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

«Пфф, ссылки они и в Африке ссылки, чего тут разбираться?» — скажете вы, тогда я задам вопрос:

Что есть что и куда нас приведет?


Если вы не знаете однозначного ответа или вам просто интересно и если вы не боитесь огромного количества трехбуквенных аббревиатур — милости прошу под кат.

Перед тем как начать хотел бы обозначить, что есть пост на схожую тему, в котором все обозначено проще и немного понятнее. Целью же этого поста, я ставлю более глубокое изучение вопроса и сбор информации об URI в одном месте, дабы «не потерять». Ну, почти в одном месте, статья будет разделена на две части
А для удобства бахнем оглавление, которое работает не без особенностей URI, которую мы рассмотрим попозжа, в этой статье.

ОГЛАВЛЕНИЕ

  1. URI
    1.1. Синтаксис
    1.2. Компоненты URI
  2. URL
    2.1. Структура
  3. URN
    3.1. Структура

Ознакомление


1. URI


Унифицированный Идентификатор Ресурса, в простонародье — URI
Самое свежее описание того, чем же все-таки являются эти пресловутые URI датируется январем аж 2005-го, а именно RFC3986, написанный самим Тимом Бёнесом-Ли, родоначальника всеми нами любимого тырнета.
Резюмируя п.1.1 можно сформулировать определение:

URI — последовательность символов, идентифицирующая физический или абстрактный ресурс, который не обязательно должен быть доступен через сеть Интернет, причем, тип ресурса, к которому будет получен доступ, определяется контекстом и/или механизмом.
Например:

  • перейдя по http://example.com — мы попадем на http-сервер ресурса идентифицируемого как example.com
  • в то же время ftp://example.com — приведет наc на ftp-сервер того же самого ресурса
  • или например http://localhost/ — URI идентифицирующий саму машину откуда производится доступ

В современном интернете, чаще всего используется две разновидности URIURL и URN.
Основное различие между ними — в задачах:
  • URLUniform Resource Locator, помогает найти какой либо ресурс
  • URNUniform Resource Name, помогает этот ресурс идентифицировать

Упрощая: URL — отвечает на вопрос: «Где и как найти что-то?», URN — отвечает на вопрос: «Как это что-то идентифицировать».
Парочка интересностей про URIМногие из вас замечали, что на разных ресурсах ссылки называют то URL, то URI и, вероятно, становилось интересно — какой же из вариантов правильный?
Дело в том, что URL увидел свет и был документирован в 1990 году, в то время как URI был документирован лишь в 1994 году. И вплоть до 2002 года, до выхода RFC3305, уместными были оба варианта именования, что, порой вносило путаницу.
В п.2 RFC3305 сообщается об устаревании такого термина как URL, применимо к ссылкам, и что отныне верным будет именование URI, с того момента, во всех документах W3C использует термин URI. Исходя из этого, применяя термин URL к соответствующим ссылкам, вы не делаете смысловой ошибки, но делаете ее с точки зрения правильного именования.

Так же примечателен тот момент, что вплоть до выхода RFC2396, в 1997 году, URI расшифровывался как Universal Resource Identifier, что можно увидеть в RFC1630

Обобщая всевозможные варианты, URI имеет следующий вид:

Забегая вперед, стоит отметить, что не все три компоненты являются строго обязательными. Для того чтобы ссылка считалась URI необходимо наличие:

  • либо scheme+authority+path,
  • либо sheme+path,
  • либо только path.
1.1. Синтаксис

Согласно п.2 RFC3986:
URI составлен из ограниченного набора символов, состоящих из цифр, букв и нескольких графических символов, все эти символы вписываются в кодировку US-ASCII (ASCII). Зарезервированное подмножество символов может использоваться, чтобы разграничить компоненты синтаксиса в URI, в то время как остающиеся символы: не зарезервированный набор и включая те зарезервированные символы, которые не действуют как разделители в данной компоненте URI, определяют данные идентификации каждого компонента.

Зарезервированные символы
Зарезервированные символы делятся на два типа:
  • gen-delims, они же «главные разделители», т.е. символы, разделяющие URI на крупные компоненты.
     ":", "/", "?", "#", "[", "]", "@"
  • sub-delims, они же «под разделители» — символы, которые разделяют текущую крупную компоненту, на более мелкие составляющие, для каждой компоненты они свои, вот список самых распространенных:
     "!", "$", "&", "'", "(", ")", "*", "+", ",", ";", "="

Не зарезервированные символы
Исходя из предыдущего пункта, не зарезервированные символы — символы, не входящие в gen-delims, а так же не значимые для данной компоненты sub-delims. Но в общем случае это:
ALPHA, DIGIT, "-", ".", "_", "~"
Для данного случая, согласно ABNF:
ALPHA — любая буква верхнего и нижнего регистров кодировки ASCII (в regExp [A-Za-z])
DIGIT — любая цифра (в regExp [0-9])
HEXDIG — шестнадцатиричная цифра (в regExp [0-9A-F])

Процентное кодирование
В случае, если используются символы выходящие за пределы кодировки ASCII используется механизм т.н. «Процентного кодирования«. Так же он применяется для передачи зарезервированных символов в составе данных. Зарезервированные символы, по правилам, не участвуют в процентном кодировании.
Процентно-кодированный символ представляет из себя символьный триплет, состоящий из знака «%» и следующих за ним двух шестнадцатиричных чисел:
pct-encoded = "%" HEXDIG HEXDIG
Т.о., %20, например, означает пробел.
1.2. Компоненты URI

Следующий список содержит описания крупных компонент, составляющих URI:
  • Scheme (схема)
    Каждый URI начинается с имени схемы, которое относится к спецификации для присвоения идентификаторов в этой схеме. Также, синтаксис URI — объединенная и расширяемая система именования, причем, спецификация каждой схемы может далее ограничить синтаксис и семантику идентификаторов, использующих эту схему.
    Название схемы обязательно начинается с буквы и далее может быть продолжено любым количеством разрешенных символов.
    Разрешенные символы для схемы:
    ALPHA, DIGIT, "+", "-", "."
  • Authority (честно говоря, не знаю как перевести слово на русский, без потери смысла)
    Компонента authority начинается с двойного слеша(//) и заканчивается следующим слешем(/), знаком вопроса(?) или октоторпом(#)(да-да, «решеточка» зовется именно так=)) или концом URI
    Authority состоит из:
    [ userinfo "@" ] host [ ":" port ]
    где в квадратных скобках опциональные компоненты
    Каждую из подкомпонент, отдельно, мы рассмотрим чуть позже, в разделе посвященном URL.
  • Path (Путь)
    Компонента пути содержит данные, обычно, организованные в иерархической форме, которые, вместе с данными в неиерархическом компоненте запроса (Query), служит, чтобы идентифицировать ресурс в рамках схемы URI и authority (если таковая компонента указана).
    Путь начинается со слеша(/) и заканчивается знаком вопроса(?), октоторпом(#) или концом URI
    Разрешенные символы для пути:
    Не зарезервированные, процентно-кодированные, sub-delims, ":", "@"
  • Query (Запрос)
    Компонента запроса содержит данные, организованные в неиерархической форме, которые, вместе с данными в иерархическом компоненте пути (Path), служит, чтобы идентифицировать ресурс в рамках схемы URI и authority (если таковая компонента указана).
    Запрос начинается с первого знака вопроса(?) и заканчивается октоторпом(#) или концом URI
    Разрешенные символы для запроса:
    Не зарезервированные, процентно-кодированные, sub-delims, ":", "@", "/", "?"
    В запросе чаще всего передаются данные в формате key=value (ключ=значение), значение рекомендуется передавать в процентно-кодированном виде, обусловлено это тем, что в значении может встретиться символ «&», который используется для разделения пар ключ-значение, в результате появления такого артефакта дальнейшая последовательность пар ключ-значение может быть нарушена.
  • Fragment (Фрагмент)
    Компонента фрагмент позволяет осуществить косвенную идентификацию вторичного ресурса по отношению к первому.
    Семантика фрагмента никак не ограничена, фрагмент начинается октоторпом(#) и заканчивается концом URI, при этом может состоять из абсолютно любого набора символов.
    Примером применения фрагментов является оглавление данной статьи. Оно состоит из относительных ссылок
    <a href="#someanchor"></a>
    а по статье, в определенных местах, раскиданы т.н. «якоря» — теги
    <anchor>someanchor</anchor>

    Переходя по указанной в оглавлении ссылке, браузер производит переход ко вторичному ресурсу относительно данной страницы, т.е. скроллит вниз, до появления нужного

    <anchor>
    на экране.

На этом, пожалуй, знакомство с URI можно закончить и начать углубляться в отдельные подвиды URI, а именно

2. URL


Стандарт URL документирован в RFC1738.
Из п.2:
URL используются, чтобы определить местоположение ресурсов, обеспечивая абстрактную идентификацию расположения ресурса. Определив местоположение ресурса, система может выполнить множество операций на ресурсе, которые могут быть характеризованы такими словами как ‘доступ’, ‘обновление’, ‘замена’, ‘поиск атрибутов’. В целом только метод доступа должен быть определен для любой схемы URL.
Т. о.: URL призван решить широкий ряд задач, начиная с получения и заканчивая изменением данных на ресурсе, а обязательным параметром для получения доступа — является метод, т. е. любой полноценный (абсолютный) URL можно свести к виду:
<scheme>:<часть свойственная этой схеме>

2.1. Структура

В целом, URL имеет схожую структуру, для всех схем, хотя для каждой отдельно взятой схемы, структура может отличаться от общего шаблона.
Графически ее можно выразить в следующем виде:

И вот, примерно на этом моменте, можно рассмотреть различия между абсолютными (absolute) и относительными (relative) URL, данные определения распространяются не только на URL, но и на URI в целом.

  • Относительная ссылка использует иерархический синтаксис, чтобы выразить ссылку URI относительно пространства имен другого иерархического URI.
    Относительные ссылки так же делятся на несколько подвидов:
    • Ссылка сетевого пути
      Имеет вид:
      //<authority> <path> [<query>] [<fragment>]
      Такой тип ссылок применяется не часто, смысл заключается в переходе по указанной ссылке с применением текущей схемы.
      Т. е.: находясь, например на http://example.com и перейдя по ссылке //domain.com — мы попадем на http://domain.com
      А в случае если перейдем по той же ссылке с ftp://example.com, то попадем на ftp://domain.com
    • Ссылка абсолютного пути
      Имеет вид:
      /<path> [<query>] [<fragment>]
      На этот раз мы останемся в пределах текущего хоста, но попадем по пути path в любом случае, по какому бы пути мы сейчас не находились.
      Т. е.: даже находясь на http://example.com/just/some/long/path и перейдя по ссылке /path, мы попадем на http://example.com/path
    • Ссылка относительного пути
      Имеет вид:
      <path> [<query>] [<fragment>]
      Теперь же, мы будем перемещаться в пределах текущего положения.
      Т. е.: находясь на http://example.com/just/some/long/path и перейдя по ссылке path, мы попадем на http://example.com/just/some/long/path/path
    • Ссылка того же документа
      Фактически это ссылки, состоящие только из фрагментарной части URI, либо же ссылки, у которых все компоненты за исключением фрагментарной совпадают с исходной.
      Т.е. #fragment и http://habrahabr.ru/topic/232385/#fragment являются ссылками того же документа.

  • Абсолютная ссылка — ссылка вида
    <scheme> <authority> [<path>] [<query>] [<fragment>]
    Применяя абсолютные ссылки, мы будем попадать на нужный нам ресурс вне зависимости от того, откуда мы переходим.
    Т. е.: находись мы на http://example.com/just/some/long/path или же на ftp://example.com, перейдя по http://domain.com/path, мы в любом случае попадем на http://domain.com/path

После того, как мы разобрались с тем, что же такое относительные и абсолютные пути — можно отвечать на вопрос заданный в начале поста:
  • http://example.com — откроет http://example.com
  • www.example.com — по-идее должен открыть http://habrahabr.ru/topic/232385/www.example.com, но хабр сам исправляет ссылку, хотя по стандартам www.example.com — ссылка относительного пути
  • //www.example.com — откроет www.example.com со схемой с которой вы просматриваете текущую страницу, т.е. скорее всего будет открыт http://example.com
  • mailto:[email protected] — здесь уже вступают в силу настройки браузера, он предложит вам открыть эту ссылку при помощи почтовой программы и отправить электронное письмо адресату [email protected], а так, это абсолютный URL со схемой mailto

Мы уже рассмотрели крупные компоненты, а теперь давайте углубимся в детали построения URL.
  • Scheme — как говорилось ранее: схема определяет метод доступа к ресурсу. Список актуальных схем можно посмотреть тут.
  • Userinfo — под-компонент authority, использующийся для авторизации пользователя на ресурсе. Состоит из username и необязательного password, от остальной части authority отделяется символом «@«. Не смотря на то, что параметр password указан в спецификации, его использование крайне не рекомендуется, т. к. фактически производится передача пароля к учетной записи username, в незашифрованном виде.
    Разрешенные символы:
    Не зарезервированные, процентно-кодированные, sub-delims, ":"

    Пример можно привести следующий:
    На локалке есть папка test, на которую стоит доступ по паре логин-пароль. То есть, перейдя по http://localhost/test/, я увижу следующее:
    А если я перейду по ссылке http://admin:admin@localhost/test/, то процедура авторизации произойдет автоматически, с данными указанными в блоке userinfo:
  • Host — компонент authority, использующийся для определения целевого узла (или ресурса, если угодно, но понятие «узел» будет более точным), который может находиться как в сети интернет, так и вне её, в зависимости от указанной схемы. Данная компонента не чувствительна к регистру.
    Хост может представлять из себя либо IP-адрес, либо регистрационное имя (reg-name) и, опционально, следующий за ними порт(port).
    Предусматривается как поддержка существующих форматов IP-адресов (IPv4, IPv6), так и всевозможных будущих, которые будут описаны впоследствии.
    Регистрационное имя — привычные нам, т. н. доменные имена — последовательность символов, обычно предназначенных для поиска в локально определенном узле или реестре имени службы, хотя специфичная для схемы семантика URI может потребовать, чтобы вместо этого использовался определенный реестр (или фиксированная таблица имен).
    Наиболее распространенный механизм реестра имен — Система Доменных Имен (DNS).
    Доменное имя, используемое для поиска в DNS, состоит из доменных меток, разделенных при помощи «.», каждая доменная метка может содержать следующие символы:
    Не зарезервированные, процентно-кодированные, sub-delims
    Синтаксис регистрационного имени позволяет использование процентно-кодированных символов, для представления не-ASCII символов, в едином порядке, не зависящем от технологии разрешения имен. Символы, не входящие в ASCII, должны быть сначала закодированы в UTF-8, а затем каждый октет UTF-8 последовательности должен быть процентно закодирован.
    В случае, если регистрационное имя с не-ASCII символами представляет собой многоязычное доменное имя, разрешаемое через DNS, оно должно быть преобразовано в кодировку IDNA (RFC3490) до поиска имени и, как следствие, регистраторами доменных имен такие регистрационные имена должны предоставляться в кодировке IDNA.
    Port (Порт) — десятичный номер порта, отделяется от hostname одним двоеточием «:», может состоять только из цифр. Схема может определять порт по-умолчанию, который будет использоваться в случае если порт не указан. Например, для схемы HTTP порт по-умолчанию — 80, что соответствует зарезервированному под неё порту 80/TCP. Тип порта, так же как и назначенный номер порта, определяется схемой.
  • Компоненты Запрос и Фрагмент полностью описаны ранее.

3. URN


Стандарт URN документирован в RFC2141.
Из п.1:
Унифицированные имена ресурсов (URN) предназначены, чтобы служить постоянными, независимыми от расположения, идентификаторами ресурсов и разработаны для упрощения отображения других пространств имен (которые совместно используют свойства URN) в URN-пространство. Таким образом, синтаксис URN обеспечивает средство закодировать символьные данные в форме, которая может быть отправлена посредством существующих протоколов, записана при помощи большинства клавиатур, и т.д.
Т. е., в отличие от URL, который ссылается на како-то место, где хранится документ, URN ссылается на сам документ, и при перемещении документа в другое место ссылка не изменится.
В силу того, что URN концептуально отличается от URL, то и система разрешения имен у него другая — DDDS, которая преобразует URN в URL, по которым можно найти ресурс/объект или что бы то ни было, на что ссылается URN.
3.1. Структура

URN имеет следующий вид:
"urn:" <NID> ":" <NSS>

  • «urn:» — обязательная, регистронезависимая часть URN
  • NID — Namespace Identifier, данная компонента определяет синтаксическую интерпретацию компоненты NSS.
    Минимальная длина — 2 символа, максимальная — 32, разрешенные символы:
    латинские буквы, цифры, "-"
    NID должен начинаться только с буквы или цифры.
    Так же, слово «urn» для NID является зарезервированным, дабы избежать неоднозначности при определении URN в целом.
    Список официально зарегистрированных NID можно посмотреть тут
  • NSS — Namespace Specific String, эта компонента служит непосредственно для передачи каких-либо данных.
    Разрешенные символы:
    латинские буквы, цифры, процентно-кодированные, "(", ")", "+", ",", "-", ".", ":", "=", "@", ";", "$", "_", "!", "*", "'"
    Зарезервированные символы:
    "%", "/", "?", "#"
    Запрещенные символы должны быть процентно-кодированы. Если указанный символ встретится в явном виде, его позиция будет считаться концом URN:
    октеты 0-32 (0-20 hex), "\", """, "&", "<", ">", "[", "]", "^", "`", "{", "|", "}", "~", октеты 127-255 (7F-FF hex)
Самоидентифицирующийся URN
Такие URN содержат в NID название хэш-функции, а в NSS значение хэша, вычисленного для идентифицируемого объекта. Такие ссылки используются в magnet-ссылках и заголовках p2p-сети Gnutela2.
Например, URN из magnet-ссылки с одного торрент-трекера:
magnet:?xt=urn:btih:c68abc1ba9b8c7c4bc373862cad1a8c01d69e53d...

С теорией все, во второй части рассмотрим, что можно и что нужно делать с URI, если мы их обрабатываем, а именно — нормализация, разбор и т.д.

За сим откланяюсь, спасибо что читали, надеюсь не было скучно, удачи!

URL — Википедия

Единый указатель ресурса (от англ. Uniform Resource Locator — унифицированный указатель ресурса, сокр.  URL [ˌjuː ɑːr ˈel]) — система унифицированных адресов электронных ресурсов, или единообразный определитель местонахождения ресурса (файла)[1].

Используется как стандарт записи ссылок на объекты в Интернет (Гипертекстовые ссылки во «всемирной паутине» www).

История

URL был изобретён Тимом Бернерсом-Ли в 1990 году в стенах Европейского совета по ядерным исследованиям (фр. Conseil Européen pour la Recherche Nucléaire, CERN) в Женеве, Швейцария. URL стал фундаментальной инновацией в Интернете. Изначально URL предназначался для обозначения мест расположения ресурсов (чаще всего файлов) во Всемирной паутине. Сейчас URL применяется для обозначения адресов почти всех ресурсов Интернета. Стандарт URL закреплён в документе RFC 3986. Сейчас URL позиционируется как часть более общей системы идентификации ресурсов URI, сам термин URL постепенно уступает место более широкому термину URI. Стандарт URL регулируется организацией IETF и её подразделениями.

В 2009 году Тим Бернерс-Ли высказал мнение об избыточности двойного слеша // в начале URL, после указания сетевого протокола[2].

Структура URL

Изначально локатор URL был разработан как система для максимально естественного указания на местонахождения ресурсов в сети. Локатор должен был быть легко расширяемым и использовать лишь ограниченный набор ASCII‐символов (к примеру, пробел никогда не применяется в URL). В связи с этим, возникла следующая традиционная форма записи URL:

<схема>:[//[<логин>[:<пароль>]@]<хост>[:<порт>]][/<URL‐путь>][?<параметры>][#<якорь>]

В этой записи:

схема 
схема обращения к ресурсу; в большинстве случаев имеется в виду сетевой протокол
логин 
имя пользователя, используемое для доступа к ресурсу
пароль 
пароль указанного пользователя
хост 
полностью прописанное доменное имя хоста в системе DNS или IP-адрес хоста в форме четырёх групп десятичных чисел, разделённых точками; числа — целые в интервале от 0 до 255.
порт 
порт хоста для подключения
URL-путь 
уточняющая информация о месте нахождения ресурса; зависит от протокола.
параметры 
строка запроса с передаваемыми на сервер (методом GET) параметрами. Начинается с символа ?, разделитель параметров — знак &. Пример: ?параметр_1=значение_1&параметр_2=значение_2&параметр3=значение_3
якорь 
идентификатор «якоря» (англ.)русск. с предшествующим символом #. Якорем может быть указан заголовок внутри документа или атрибут id (англ.)русск. элемента. По такой ссылке браузер откроет страницу и переместит окно к указанному элементу. Например, ссылка на этот раздел статьи: https://ru.wikipedia.org/URL#Структура_URL.

Схемы (протоколы) URL

Общепринятые схемы (протоколы) URL включают:

  • ftp — Протокол передачи файлов FTP
  • http — Протокол передачи гипертекста HTTP
  • rtmp — Real Time Messaging Protocol проприетарный протокол потоковой передачи данных, в основном используется для передачи потокового видео и аудиопотоков с веб-камер через интернет.
  • rtsp — Потоковый протокол реального времени.
  • https — Специальная реализация протокола HTTP, использующая шифрование (как правило, SSL или TLS)
  • gopher — Протокол Gopher
  • mailto — Адрес электронной почты
  • news — Новости Usenet
  • nntp — Новости Usenet через протокол NNTP
  • irc — Протокол IRC
  • smb — Протокол SMB/CIFS
  • prospero — Служба каталогов Prospero Directory Service
  • telnet — Ссылка на интерактивную сессию Telnet
  • wais — База данных системы WAIS
  • xmpp — Протокол XMPP (часть Jabber)
  • file — Имя локального файла
  • data — Непосредственные данные (Data: URL)
  • tel — звонок по указанному телефону

Экзотические схемы URL:

  • afs — Глобальное имя файла в файловой системе Andrew File System
  • cid — Идентификатор содержимого для частей MIME
  • mid — Идентификатор сообщений для электронной почты
  • mailserver — Доступ к данным с почтовых серверов
  • nfs — Имя файла в сетевой файловой системе NFS
  • tn3270 — Эмуляция интерактивной сессии Telnet 3270
  • z39.50 — Доступ к службам ANSI Z39.50
  • skype — Протокол Skype
  • smsto — Открытие редактора SMS в некоторых мобильных телефонах
  • ed2k — Файлообменная сеть eDonkey, построенная по принципу P2P
  • market — Android Маркет
  • steam — протокол Steam
  • bitcoin — Криптовалюта Биткойн
  • ob — OpenBazaar
  • tg — Telegram

Схемы URL в браузерах:

Кодирование URL

Стандарт URL использует набор символов US-ASCII. Это имеет серьёзный недостаток, поскольку разрешается использовать лишь латинские буквы, цифры и несколько lзнаков пунктуации. Все другие символы необходимо перекодировать. Например, перекодироваться должны буквы кириллицы, буквы с диакритическими знаками, лигатуры, иероглифы. Перекодирующая кодировка описана в стандарте RFC 3986 и называется URL-encoding, URLencoded или percent‐encoding.

Пример кодирования можно видеть в русскоязычной Википедии, использующей в URL русский язык. Например, строка вида:

https://ru.wikipedia.org/Путин

кодируется как:

https://ru.wikipedia.org/%D0%94%D0%B6%D0%B8%D0%B3%D1%83%D1%80%D0%B4%D0%B0

Реализация

Преобразование происходит в два этапа: сначала каждый символ кириллицы кодируется в UTF-8 в последовательность из двух байтов, а затем каждый байт этой последовательности записывается в шестнадцатеричном представлении с предшествующим знаком процента (%):

Д → D0 и 94 → %D0%94
ж → D0 и B6 → %D0%B6
и → D0 и B8 → %D0%B8
г → D0 и B3 → %D0%B3, и т. д.

Все другие символы в URI кодируются.

Зарезервированные символы кодируются в таком соответствии:

!»#[5]$%&[5]*+,[5]:[5];[5]<=[5]>?[5][]^`{|}<пробел>
%21%22%23%24%25%26%27%2A%2B%2C%3A%3B%3C%3D%3E%3F%5B%5D%5E%60%7B%7C%7D%20[6]

Кодирование параметров в Internet Explorer и старом Firefox происходит несколько иначе[7].

В некоторых случаях URL формируется с использованием кодирования Base58[8].

Стандарт IRI

Поскольку такому преобразованию подвергаются буквы всех алфавитов, кроме базовой латиницы, то URL со словами подавляющего большинства языков может стать нечитаемым для человека.

Это всё входит в противоречие с принципом интернационализма, провозглашаемого всеми ведущими организациями Интернета, включая W3C и ISOC. Эту проблему призван решить стандарт IRI (англ. Internationalized Resource Identifier) — международных идентификаторов ресурсов, в которых можно было бы без проблем использовать символы Юникода, и которые поэтому не ущемляли бы права других языков. Хотя заранее сложно сказать, смогут ли когда‐либо идентификаторы IRI заменить столь широко используемые URL (и URI в целом).

Ограничение длины

Формально, длина URL не ограничена, но браузеры имеют ограничения по длине URL. Не рекомендуется использовать URL длиной более 2048 символов, так как Microsoft Internet Explorer имеет именно такое ограничение[9].

Инициатива PURL

Ещё один кардинальный недостаток URL состоит в отсутствии гибкости. Ресурсы во Всемирной паутине и Интернете перемещаются, а ссылки в виде URL остаются, указывая на уже отсутствующие ресурсы. Это особенно болезненно для электронных библиотек, каталогов и энциклопедий. Для решения этой проблемы были предложены постоянные локаторы PURL (англ. Persistent Uniform Resource Locator). В сущности это те же URL, но они указывают не на конкретное место расположения ресурса, а на запись в базе данных PURL, где, в свою очередь, записан уже конкретный URL‐адрес ресурса. При обращении к PURL сервер находит нужную запись в этой базе данных и перенаправляет запрос уже на конкретное местоположение ресурса. Если адрес ресурса меняется, то нет нужды исправлять все бесчисленные ссылки на него — достаточно лишь изменить запись в БД. В настоящий момент эта идея не стандартизирована и не имеет широкого распространения.

См. также

Примечания

Ссылки

Структура url

Изначально локатор URL был разработан как система для максимально естественного указания на местонахождения ресурсов в сети. Локатор должен был быть легко расширяемым и использовать лишь ограниченный набор ASCII‐символов (к примеру, пробел никогда не применяется в URL). В связи с этим, возникла следующая традиционная форма записи URL:

<схема>://<логин>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>#<якорь>

В этой записи:

схема — схема обращения к ресурсу; в большинстве случаев имеется в виду сетевой протокол

логин — имя пользователя, используемое для доступа к ресурсу

пароль — пароль указанного пользователя

хост — полностью прописанное доменное имя хоста в системе DNS или IP-адрес хоста в форме четырёх групп десятичных чисел, разделённых точками; числа — целые в интервале от 0 до 255.

порт порт хоста для подключения

URL-путь — уточняющая информация о месте нахождения ресурса; зависит от протокола.

параметры — строка запроса с передаваемыми на сервер (методом GET) параметрами. Разделитель параметров — знак &.

якорь — идентификатор «якоря», ссылающегося на некоторую часть (раздел) открываемого документа. С развитием AJAX в этой части стали размещать параметры для JavaScript на странице, и страница в зависимости от указанного якоря может в браузере выглядеть по-разному. Для обеспечения возможности индексирования подобных страниц поисковыми системами компания Google предложила подход, предполагающий использование знака ! в начале якоря и некоторую поддержку на сервере сайта

Схемы (протоколы) url

Общепринятые схемы (протоколы) URL включают:

  • ftp — Протокол передачи файлов FTP

  • http — Протокол передачи гипертекста HTTP

  • rtmp — Real Time Messaging Protocol проприетарный протокол потоковой передачи данных, в основном используется для передачи потокового видео и аудиопотоков с веб-камер через интернет.

  • rtsp — Потоковый протокол реального времени.

  • https — Специальная реализация протокола HTTP, использующая шифрование (как правило, SSL или TLS)

  • gopher — Протокол Gopher

  • mailto — Адрес электронной почты

  • news — Новости Usenet

  • nntp — Новости Usenet через протокол NNTP

  • irc — Протокол IRC

  • prospero — Служба каталогов Prospero Directory Service

  • telnet — Ссылка на интерактивную сессию Telnet

  • wais — База данных системы WAIS

  • xmpp — Протокол XMPP (часть Jabber)

  • file — Имя локального файла

  • data — Непосредственные данные (Data: URL)

  • tel — звонок по указаному телефону

DNS (англ. Domain Name System — система доменных имён) — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства), получения информации о маршрутизации почты, обслуживающих узлах для протоколов в домене (SRV-запись).

34) Информационные услуги Интернета. (Интранет)

35) Наиболее популярные поисковые серверы. (Google, Yahoo!, Bing, Yandex, Ask, Rambler, Mail.ru, Нигма.РФ)

36) Различные типы серверов. Преимущества сети.

Сервером называют не только компьютер, но и программное обеспечение, управляющее разделяемыми ресурсами и доступом к ним. На одном компьютере может работать одновременно несколько программ-серверов, например. В обиходе, говоря, например, о «почтовом сервере», подразумевают совокупность «железа» и «софта». В зависимости от функций, которые выполняет ПО, можно выделить несколько разновидностей серверов.

  • Файловый сервер. В его задачи входит хранение файлов и обеспечение доступа к ним клиентских ПК, например, по протоколу FTP. Ресурсы файл-сервера могут быть либо открыты для всех компьютеров в сети, либо защищены системой идентификации и правами доступа.

  • Сервер печати принимает запросы на печать от компьютеров локальной сети и отправляет их на один или несколько подключенных к нему принтеров.

  • Мультимедийные серверы предназначены для хранения фотографий, музыки, фильмов и другого контента. В качестве такого сервера не обязательно использовать компьютер. Можно купить устройство NAS или даже обойтись компактным внешним жестким диском, подключаемым к сети через интерфейс Ethernet или Wi-Fi.

  • Игровые серверы. Разработчики компьютерных игр открывают специальные серверы, на которых пользователи могут играть друг с другом. Существует немало игр, в которых одновременно участвуют сотни и даже тысячи человек (например, Lineage 2 и World of Warcraft).

  • Серверы электронной почты. Электронное письмо нельзя послать непосредственно получателю – сначала оно попадает на сервер, на котором зарегистрирована учетная запись отправителя. Тот, в свою очередь, отправляет «посылку» серверу получателя, с которого последний и забирает сообщение.

  • Серверы мгновенного обмена сообщениями. Программы-«мессенджеры» – AIM, ICQ или MSN Messenger – работают с помощью сети коммуникационных серверов, действующих по тому же общему принципу, что и почтовые серверы.

  • Веб-серверы. Эти серверы хранят интернет-документы. Сайты с высокой посещаемостью или расширенной функциональностью размещаются сразу на нескольких серверах.

  • Серверы данных хранят разного рода материалы, необходимые для функционирования серверов другого назначения. Так, некоторые тексты, рисунки и стилевые элементы веб-сайта могут быть расположены на отдельном сервере данных. Когда пользователь открывает стартовую страницу сайта, то веб-сервер передает серверу данных запрос на получение необходимых сведений. Сервер баз данных осуществляет поиск запрошенных данных и посылает их веб-серверу. Он, в свою очередь, формирует веб-страницу и посылает ее клиентскому компьютеру.

Особые серверы в Интернете и локальных сетях не хранят данные, а обеспечивают их транспорт между компьютерами.

  • DHCP-серверы. Dynamic Host Configuration Protocol обеспечивает автоматическое распределение IP-адресов  между компьютерами в сети.

  • DNS-серверы. Функция DNS-сервера заключается в преобразовании доменных имен серверов в IP-адреса, поскольку передача данных в сетях осуществляется по протоколу IP.

  • Прокси-серверы выступают в качестве посредников при передаче данных по сети – с компьютера на компьютер. Они используются либо для организации разделяемого доступа в Интернет, либо для сокрытия IP-адреса ПК от компьютера-«собеседника».

  • Кэш-серверы. Чтобы при каждом открытии веб-страницы клиентскому компьютеру не приходилось запрашивать заново все составляющие ее данные, используются промежуточные накопители – кэш-серверы, принцип действия которых не отличается, например, от принципа использования кэш-памяти в процессорах.

37) Наиболее популярные почтовые клиенты. Электронная почта.

Microsoft Outlook Microsoft Outlook входит в наиболее популярный пакет офисных программ Microsoft Office. Помимо функций получения и отправки электронной почты почтовый клиент Microsoft Outlook предоставляет функции календаря, планировщика поставленных задач, менеджера контактов, записной книжки и многими другими. Microsoft Outlook Express Наверное, это наиболее распространённый почтовый клиент среди пользователей електронной почты. Свою большую популярность программа получила за счет того, что она по умолчанию встроена в стандартный набор программ операционной системы Windows. В отличие от Microsoft Outlook почтовый клиент Outlook Express имеет существенно меньше возможностей, но со своими задачами по отправке и получению почтовых сообщений со своими функциями справляется отлично.  Opera Mail Свою популярность этот почтовый клиент получил за счет того, что он входит в состав очень популярного браузера Opera. Для тех пользователей, которые для интернет-серфинга использует этот браузер, является очень удобным совместное использование браузера и почтового клиента в одном приложении. Помимо удобство использования этот клиент обладает таким полезным качеством как скорость работы. Из недостатков этого почтовика следует отметить тот факт, что Opera Mail не умеет отправлять сообщения в формате html, только обычный текст и, не смотря на то, что умеет работать сразу с несколькими учетными записями почты – всю корреспонденцию клиент ложит в одну папку. Почтовый клиент имеет встроенные обучаемый фильтр спама, и сумел зарекомендовать себя с очень хорошей стороны.

The Bat! Почтовый клиент The Bat! На сегодняшний момент считается одним из самых лучших программ для чтения и отправки писем. Разработчики этого программного обеспечения позаботились о хорошем редакторе сообщений. Клиент умеет отлично распределять и отфильтровывать по заданным параметрам почтовые сообщения и разлаживать их в папки, указанные пользователем. Согласитесь, для человека, использующего почту для принятия и обработки важной корреспонденции – очень удобная и полезная функция. Этот почтовый клиент позволяет устанавливать дополнительные модули, существенно расширяющие возможности программы. Существенный минус этого почтового клиента – он платный. Mozilla Thunderbird На сегодня это самый сильный конкурент всем почтовым клиентам, так как он удобен, функционален и бесплатен. Почтовый клиент Mozilla Thunderbird имеет очень простой и дружелюбный интерфейс, при всё при этом свои задачи Thunderbird выполняет великолепно. Почтовый клиент умеет работать с несколькими акаунтами, при чем умеет настраивать и работать как с общими папками, так и с определёнными. Функции почтового клиента могут быть расширены за счет различных дополнений.

Электро́нная по́чта (англ. email, email, от англ. electronic mail) — технология и предоставляемые ею услуги по пересылке и получению электронных сообщений (называемых «письма» или «электронные письма») по распределённой (в том числе глобальной) компьютерной сети.

Структура e-mail

Логин @ имя сервера . домен

38) Наиболее популярные электронные почты, основанные на WWW.

Mail.ru, Google Mail, Yandex Mail, Rambler Mail, QIP Mail

39) Основные типы компьютерных вирусов. Средства защиты от вирусов.

Традиционные – попадают на Ваш компьютер через сеть или твердые носители, и воспроизводит себя. Копирует на все компьютеры Вашей подсети и удаляет какие-то файлы. 

Второй тип – черви. Попадают на Ваш компьютер через сеть и заставляют Ваши почтовые программы рассылать письма со всякой вредоносной фигней. Вот не надо говорить, что червь бластер Вам не известен, который поразил более 1 миллиона компьютеров.

И третий тип троянские копи, по сути, не вредоносная программа, но доставляет хакерам доступ к Вашей операционной системе. Если Вы подхватили троянского коня, то разработчики этого Трояна получают расширенный доступ к Вашей конфиденциальной информации, удалить такой вирус бывает не просто. Начиная от безобидного логина и пароля к Вашему основному e-mail аккаунту, и заканчивая полным доступом и полным управлением компьютера, мышкой клавиатурой и так далее. Кстати использовать троянскую программу хакеры из группы КьюЭйЗед в 2002 году получили доступ к секретным кодам компании Майкрософт.

40) Локальная и глобальная сеть.

Глобальная компьютерная сетьГКС (англ. Wide Area NetworkWAN) — компьютерная сеть, охватывающая большие территории и включающая в себя большое число компьютеров.

ГКС служат для объединения разрозненных сетей так, чтобы пользователи и компьютеры, где бы они ни находились, могли взаимодействовать со всеми остальными участниками глобальной сети.

Некоторые ГКС построены исключительно для частных организаций, другие являются средством коммуникации корпоративных ЛВС с сетью Интернет или посредством Интернет с удалёнными сетями, входящими в состав корпоративных. Чаще всего ГКС опирается на выделенные линии, на одном конце которых маршрутизатор подключается к ЛВС, а на другом коммутатор связывается с остальными частями ГКС. Основными используемыми протоколами являются TCP/IP, SONET/SDH, MPLS, ATM и Frame relay. Ранее был широко распространён протокол X.25, который может по праву считаться прародителем Frame relay.

URL — Викиреальность

(перенаправлено с «Url») Я вам кину ссылочку

URL (англ. Uniform Resource Locator, рус. Единый указатель ресурсов‎, ранее англ. Universal Resource Locator, рус. Универсальный указатель ресурсов‎) — единообразный локатор (определитель местонахождения) ресурса и стандартизированный способ записи адреса ресурса в сети Интернет. Самый используемый локатор в мире.

URL был изобретён Тимом Бернерсом-Ли в 1990 году в стенах Европейского совета по ядерным исследованиям (фр. Conseil Européen pour la Recherche Nucléaire, CERN) в Женеве, Швейцария. URL стал фундаментальной инновацией в Интернете. Изначально URL предназначался для обозначения мест расположения ресурсов (чаще всего файлов) во Всемирной паутине. Сейчас URL применяется для обозначения адресов почти всех ресурсов Интернета. Стандарт URL закреплён в документе RFC 1738, прежняя версия была определена в RFC 1630. Сейчас URL позиционируется как часть более общей системы идентификации ресурсов URI (англ. Uniform Resource Identification), сам термин URL постепенно уступает место более широкому термину URI. Стандарт URL регулируется организацией IETF и её подразделениями.

В целом, URL имеет схожую структуру, для всех схем, хотя для каждой отдельно взятой схемы, структура может отличаться от общего шаблона.

Графически она выражается так:[1]

Изначально локатор URL был разработан как система для максимально естественного указания на местонахождения ресурсов в сети. Локатор должен был быть легко расширяемым и использовать лишь ограниченный набор ASCII‐символов (к примеру, пробел никогда не применяется в URL). В связи с этим, возникла следующая традиционная форма записи URL:

<схема>://<логин>:<пароль>@<хост>:<порт>/<URL‐путь>?<параметры>#<якорь>


Где:

  • схема — схема обращения к ресурсу; в большинстве случаев имеется в виду сетевой протокол (обычно http(s), mailto, irc, ftp)
  • логин — имя пользователя, используемое для доступа к ресурсу
  • пароль — пароль указанного пользователя
  • хост — полностью прописанное доменное имя хоста в системе DNS или IP-адрес хоста в форме четырёх групп десятичных чисел, разделённых точками; числа — целые в интервале от 0 до 255. порт порт хоста для подключения URL-путь уточняющая информация о месте нахождения ресурса; зависит от протокола. параметры строка запроса с передаваемыми на сервер (методом GET) параметрами. Разделитель параметров — знак &. Пример:

    ?параметр_1=значение_1&параметр_2=значение_2&параметр3=значение_3

  • якорь — идентификатор «якоря», ссылающегося на некоторую часть (раздел) открываемого документа. С развитием AJAX в этой части стали размещать параметры для JavaScript на странице, и страница в зависимости от указанного якоря может в браузере выглядеть по-разному. Для обеспечения возможности индексирования подобных страниц поисковыми системами компания Google предложила подход, предполагающий использование знака ! в начале якоря и некоторую поддержку на сервере сайта[2].

На сегодняшний день Тим Бернес-Ли признаёт, что символ двойной косой черты в структуре URL является избыточным[3].

[править] Схемы (протоколы)

Общепринятые схемы (протоколы) URL включают:

  • ftp — Протокол передачи файлов FTP
  • http — Протокол передачи гипертекста HTTP
  • rtmp — Real Time Messaging Protocol проприетарный протокол потоковой передачи данных, в основном используется для передачи потокового видео и аудиопотоков с веб-камер через интернет.
  • rtsp — Потоковый протокол реального времени.
  • https — Специальная реализация протокола HTTP, использующая шифрование (как правило, SSL или TLS)
  • gopher — Протокол Gopher
  • mailto — Адрес электронной почты
  • news — Новости Usenet
  • nntp — Новости Usenet через протокол NNTP
  • irc — Протокол IRC
  • prospero — Служба каталогов Prospero Directory Service
  • telnet — Ссылка на интерактивную сессию Telnet
  • wais — База данных системы WAIS
  • xmpp — Протокол XMPP (часть Jabber)
  • file — Имя локального файла
  • data — Непосредственные данные (Data: URL)
  • tel — звонок по указаному телефону

Экзотические схемы URL:

  • afs — Глобальное имя файла в файловой системе Andrew File System
  • cid — Идентификатор содержимого для частей MIME
  • mid — Идентификатор сообщений для электронной почты
  • mailserver — Доступ к данным с почтовых серверов
  • nfs — Имя файла в сетевой файловой системе NFS
  • tn3270 — Эмуляция интерактивной сессии Telnet 3270
  • z39.50 — Доступ к службам ANSI Z39.50
  • skype — Протокол Skype
  • smsto — Открытие редактора SMS в некоторых мобильных телефонах
  • ed2k — Файлообменная сеть eDonkey, построенная по принципу P2P
  • market — Android Маркет

[править] Кодирование URL

Появление адресов URL стало существенным нововведением в Интернете. Однако с момента его изобретения и по сей день стандарт URL обладает серьёзным недостатком — в нём можно использовать только ограниченный набор символов, даже меньший, нежели в ASCII: латинские буквы, цифры и лишь некоторые знаки препинания. Если мы захотим использовать в URL символы кириллицы, или иероглифы, или, скажем, специфические символы французского языка, то нужные нам символы должны быть перекодированы особым образом.


Поскольку такому преобразованию подвергаются буквы всех алфавитов, кроме базовой латиницы, то URL со словами на подавляющем большинстве языков (кроме английского, итальянского, латинского) может утратить способность восприниматься людьми.

Это всё входит в противоречие с принципом интернационализма, провозглашаемого всеми ведущими организациями Интернета, включая W3C и ISOC. Эту проблему призван решить стандарт IRI (англ. International Resource Identifier) — международных идентификаторов ресурсов, в которых можно было бы без проблем использовать символы Юникода, и которые поэтому не ущемляли бы права других языков. Хотя заранее сложно сказать, смогут ли когда-либо идентификаторы IRI заменить столь широко используемые URL (и URI в целом).

Ещё один кардинальный недостаток URL состоит в отсутствии гибкости. Ресурсы во Всемирной паутине и Интернете перемещаются, а ссылки в виде URL остаются, указывая на уже отсутствующие ресурсы. Это особенно болезненно для электронных библиотек, каталогов и энциклопедий. Для решения этой проблемы были предложены постоянные локаторы PURL (англ. Persistent Uniform Resource Locator). В сущности это те же URL, но они указывают не на конкретное место расположения ресурса, а на запись в базе данных PURL, где, в свою очередь, записан уже конкретный URL-адрес ресурса. При обращении к PURL сервер находит нужную запись в этой базе данных и перенаправляет запрос уже на конкретное местоположение ресурса. Если адрес ресурса меняется, то нет нужды исправлять все бесчисленные ссылки на него — достаточно лишь изменить запись в БД. В настоящий момент эта идея не стандартизирована и не имеет широкого распространения.

  • Красные ссылки — ссылки на несуществующие (ещё не созданные или удалённые) страницы в википроектах. Красные ссылки на личные страницы участников привели к возникновению красных участников.
  • Битая ссылка — url, ссылающийся на несуществующий или прекративший существование интернет-сайт или интернет-страницу.
  • Поддельные ссылки — используемые злоумышленниками для обмана интернет-пользователей

Что такое url-адрес: определение и структура

Приветствую всех читателей блога Александра Сергиенко! Сегодняшняя тема нашей статьи будет посвящена URL-адресам, собственно тому, что такое url-адрес сайта какую структуру имеет и ещё кое-что.

Эта статья будет первой в рубрике «Вопросы новичков», в которой я буду писать о наиболее простых вопросах, которые возникают у новичков. Ну, а эта статья может быть полезна не только новичкам, кое-что новое может узнать и «бывалый» блоггер.

Если подробно разбирать тему формирования урл-адресов, а тем более их более расширенную версию URI, можно встретить много сложностей в плане понимания, которые, в принципе, рядовому блоггеру и не нужно знать, разве  что для общего развития.


data-ad-client=»ca-pub-8243622403449707″
data-ad-slot=»1319308473″
data-ad-format=»auto»>

Нам же главное понять, на данном этапе, структуру создания урлов, что мы и будем делать в данной статье.

Определение

Как вы уже знаете поисковые системы индексируют страницы сайты по некоторому принципу, в результате данную страницу сайта можно найти при помощи поисковой системы по некоторому запросу.

Но это можно сделать, набрав, в строке браузера url-адрес страницы сайта. В общем, любая вебстраница (документ) любого Интернет-ресурса имеет свой уникальный адрес, который называют аббревиатурой URL (урл), а расшифровывается она как Uniform Resource Locator (определитель местонахождения ресурса). Разработал URL-адрес Тим Бернерс — Ли.

URL-адрес — это частный случай идентификатора  URI (Uniform Resource Identifier — унифицированный идентификатор ресурса). Но об этом мы подробно разговаривать не будем, так как нам все эти тонкости на данном этапе не нужны.

Итак, урл-адрес — это способ в Интернете указать на какой-либо Интернет-ресурс (его страницу, документ). Этот URL-адрес используется не только для работы по протоколу http и https, которые нас будут интересовать в данной статье.

Вот как будет выглядеть c протоколом передачи данных http:

http://int-net-partner.ru/papka/fail.html

После протокола передачи данных http следует «int-net-partner.ru» или же это может быть «www.int-net-partner.ru». Доменное имя входит в обозначение URL-адреса и оно может быть как с WWW, так и без него.

Если говорить о поисковиках, то сайты с WWW и без него для них являются абсолютно разными для них. И если не произвести склейку зеркал, то ссылочная масса будет делится на два этих зеркала.

Обычно склейку зеркал производит хостер, но это нужно обязательно проверить. Главное, что нужно сделать — это определить главное зеркало, которое будет индексироваться поисковиками, а также участвовать в ранжировании. Это можно сделать при помощи Гугл или Яндекс Вебмастер или прописыванием директивы Host в файле robots.txt.

На моём блоге главное зеркало — «int-net-partner.ru», «без WWW». Если же добавить к этому URL-адресу «WWW», то произойдёт автоматическое перенаправление на адрес «без WWW».

http://www.int-net-partner.ru/papka/fail.html

Хочу заметить, что склеить можно любые доменные имена. Но давайте рассмотрим Урл — адрес, расположенный выше. Путь до документа или файла (конкретного объекта) будет расположен за третьим слешем, в данном случае это «papka/fail.html«. В вышеприведённом примере в роли документа выступает «fail.html«, который находится в каталоге «papka«, который находится в корневой папке.

Также через урлы различные системы управления контентом передают GET параметры, которые добавляются в конец URL-адреса, после знака вопроса:

http://www.int-net-partner.ru/papka/fail.html?print=yes

Дело в том, что документы с GET параметром и без него, являются абсолютно разными для поисковиков, поэтому нужно вводить запрет в robots.txt, во избежание дублирования контента, за которое поисковики могут наложить определённые санкции.

К главной странице моего сайта можно обратиться по трём URL-адресам:

  1. http://int-net-partner.ru
  2. http://www.int-net-partner.ru
  3. http://www.int-net-partner.ru/index.php

И это опять же в плане дублирования контента очень и очень плохо. У меня же, при любом вводе Урла перенаправление идёт на URL-адрес такого вида: «http://int-net-partner.ru«

Как я уже говорил, перенаправление можно сделать при помощи 301 редиректа в файле .htaccess, или в настройках сервера вами или вашим хостером.

Структура URL-адреса

Вот так выглядет полный вид URL-адреса (блок-схема):

Обычно не используют логин, пароль и порт, хотя на некоторые сайты они могут понадобиться:

http://login:[email protected]/platniy-dostup.html

Иногда для входа на ftp-сервер может быть использован не стандартный порт, который отличается от используемого «по умолчанию» протокола. Тогда для доступа к такому ftp-серверу придётся вводить подобный урл:

ftp://login:[email protected]:6789/samoe-nujnoe/cimus

Кроме вышепреведённых примеров, в состав урл — адреса может добавляться якорь, который ставиться после символа «#» в конце урла. URL-адреса, которые содержат якоря, называют хеш-ссылками.

Якоря нужны для того, чтобы можно было перейти в нужное место страницы (там где проставлен якорь). Это удобно делать, если вы хотите сделать содержание своей статьи, тогда посетитель может перейти в нужную ему часть статьи, не просматривая её полностью. Чтобы это осуществить, нужно заранее проставить якоря (в нужных местах) внутри Html кода страницы (документа), затем нужно добавить название самого якоря к урлу страницы через знак решётки «#».

Перекодировка

А теперь давайте ещё поговорим о перекодировке URL-адресов. Вот, например, использование русских символов допустимо, но в этом случае произойдёт перекодировка этих символов, URL Encoding.

Вот пример:

http://int-net-partner.ru/оптимизация сайта/

А вот, что получилось после перекодировки:

http//int-net-partner.ru/%BA%B1%82%D0%BE%20%D0%BD%D0% B0%20%D0%BD%D0%BE%D0%B2%D0%B5%D0%BD%D1%8C%B0%BA%D0 %BE%D0%B3%D0%BE

Вот видите, не очень удобоваримый вариант. Поэтому, по мнению многих оптимизаторов, лучше использовать транслитерацию, так как это будет намного лучше в плане SEO оптимизации под поисковики.

P.S. 

Как вам статья? Рекомендую получать свежие статьи блога на e-mail, чтобы не пропустить много новой интересной информации!

С уважением, Александр Сергиенко

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *