aboutsummaryrefslogtreecommitdiff
path: root/files/ru/learn/common_questions/what_is_a_url/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/ru/learn/common_questions/what_is_a_url/index.html')
-rw-r--r--files/ru/learn/common_questions/what_is_a_url/index.html162
1 files changed, 162 insertions, 0 deletions
diff --git a/files/ru/learn/common_questions/what_is_a_url/index.html b/files/ru/learn/common_questions/what_is_a_url/index.html
new file mode 100644
index 0000000000..7cf4fe04d7
--- /dev/null
+++ b/files/ru/learn/common_questions/what_is_a_url/index.html
@@ -0,0 +1,162 @@
+---
+title: Что такое URL-адрес?
+slug: Learn/Common_questions/What_is_a_URL
+tags:
+ - URL
+ - Адрес
+ - Порт
+ - Ресурс
+ - Якорь
+ - домен
+ - протокол
+translation_of: Learn/Common_questions/What_is_a_URL
+original_slug: Learn/Understanding_URLs
+---
+<div class="summary">
+<p>Данная статья описывает Единый локатор ресурсов или Uniform Resource Locators (URLs), объясняет, что это такое, и опиcывает его структуру. </p>
+</div>
+
+<table class="learn-box standard-table">
+ <tbody>
+ <tr>
+ <th scope="row">Предварительно:</th>
+ <td>Вам нужно узнать <a href="/ru/docs/Learn/How_the_Internet_works">как работает интернет</a>, <a href="/ru/docs/Learn/What_is_a_Web_server">что такое Веб сервер</a> and <a href="/ru/docs/Learn/Understanding_links_on_the_web">что лежит в основе веб ссылок </a>.</td>
+ </tr>
+ <tr>
+ <th scope="row">Цель:</th>
+ <td>Вы узнаете, что такое URL и как они работают в вебе.</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Введение">Введение</h2>
+
+<p>Наряду с понятиями <a href="/ru/docs/Glossary/Hypertext">гипертекста</a> и <a href="/ru/docs/Glossary/HTTP">протокола HTTP</a>, понятие <a href="ru/docs/Glossary/URL">URL</a> является одной из основных концепций Всемирной паутины. Это механизм, используемый <a href="ru/docs/Glossary/Browser">браузерами</a> для получения любого опубликованного во Всемирной сети ресурса.</p>
+
+<p><strong>URL</strong> обозначает <em>Uniform Resource Locator</em>. URL это лишь адрес, который выдан уникальному ресурсу в интернете. В теории, каждый корректный URL ведет на уникальный ресурс. Такими ресурсами могут быть HTML-страница, CSS-файл, изображение и т.д. На практике, существуют некоторые исключения, когда, например, URL ведет на ресурс, который больше не существует или который был перемещён. Поскольку ресурс, доступный по URL, а также сам URL обрабатываются веб-сервером, его владелец должен внимательно следить за размещаемыми ресурсами и связанными с ними URL.</p>
+
+<h2 id="Активное_обучение">Активное обучение</h2>
+
+<p><em>Активного обучения пока не существует. <a href="/ru/docs/MDN/Getting_started">Пожайлуста подумайте, возможно Вы сможете внести свой вклад</a>.</em></p>
+
+<h2 id="Подробная_информация">Подробная информация</h2>
+
+<h3 id="Основы_анатомия_URL">Основы: анатомия URL</h3>
+
+<p>Вот несколько примеров URL:</p>
+
+<pre>https://developer.mozilla.org
+https://developer.mozilla.org/ru/docs/Learn/
+https://developer.mozilla.org/ru/search?q=URL</pre>
+
+<p>Каждый из этих URLs могут быть напечатаны в адресной строке браузера, чтобы заставить его загрузить связанную страницу (ресурс).</p>
+
+<p>URL состоит из различных частей, некоторые из которых являются обязательными, а некоторые - факультативными. Рассмотрим наиболее важные части на примере:</p>
+
+<pre>http://www.example.com:80/path/to/myfile.html?key1=value1&amp;key2=value2#SomewhereInTheDocument</pre>
+
+<dl>
+ <dt><img alt="Protocol" src="https://mdn.mozillademos.org/files/8013/mdn-url-protocol@x2.png" style="height: 70px; width: 440px;"></dt>
+ <dd><code>http://</code> это протокол. Он отображает, какой протокол браузер должен использовать. Обычно это HTTP-протокол или его безопасная версия - HTTPS. Интернет требует эти 2 протокола, но браузеры часто могут использовать и другие протоколы, например <code>mailto:</code> (чтобы открыть почтовый клиент) или <code>ftp:</code> для запуска передачи файлов, так что не стоит удивляться, если вы вдруг увидите другие протоколы.</dd>
+ <dt><img alt="Domaine Name" src="https://mdn.mozillademos.org/files/8015/mdn-url-domain@x2.png" style="height: 70px; width: 440px;"></dt>
+ <dd><code>www.example.com</code> это доменное имя. Оно означает, какой веб-сервер должен быть запрошен. В качестве альтернативы может быть использован и {{Glossary("IP address", "IP-адрес")}}, но это делается редко, поскольку запоминать IP сложнее, и это не популярно в интернете.</dd>
+ <dt><img alt="Port" src="https://mdn.mozillademos.org/files/8017/mdn-url-port@x2.png" style="height: 70px; width: 440px;"></dt>
+ <dd><code>:80</code> это порт. Он отображает технический параметр, используемый для доступа к ресурсам на веб-сервере. Обычно подразумевается, что веб-сервер использует стандартные порты HTTP-протокола (80 для HTTP и 443 для HTTPS) для доступа к своим ресурсам. В любом случае, порт - это факультативная составная часть URL.</dd>
+ <dt><img alt="Path to the file" src="https://mdn.mozillademos.org/files/8019/mdn-url-path@x2.png" style="height: 70px; width: 440px;"></dt>
+ <dd><code>/path/to/myfile.html</code> это адрес ресурса на веб-сервере. В прошлом, адрес отображал местоположение реального файла в реальной директории на веб-сервере. В наши дни это чаще всего абстракция, позволяющая обрабатывать адреса и отображать тот или иной контент из баз данных.</dd>
+ <dt><img alt="Parameters" src="https://mdn.mozillademos.org/files/8021/mdn-url-parameters@x2.png" style="height: 70px; width: 440px;"></dt>
+ <dd><code>?key1=value1&amp;key2=value2</code> это дополнительные параметры, которые браузер сообщает веб-серверу. Эти параметры - список пар ключ/значение, которые разделены символом <code>&amp;</code>. Веб-сервер может использовать эти параметры для исполнения дополнительных команд перед тем как отдать ресурс. Каждый веб-сервер имеет свои собственные правила обработки этих параметров и узнать их можно, только спросив владельца сервера.</dd>
+ <dt><img alt="Anchor" src="https://mdn.mozillademos.org/files/8023/mdn-url-anchor@x2.png" style="height: 70px; width: 440px;"></dt>
+ <dd><code>#SomewhereInTheDocument</code> это якорь на другую часть того же самого ресурса. Якорь представляет собой вид "закладки" внутри ресурса, которая переадресовывает браузер на "заложенную" часть ресурса. В HTML-документе, например, браузер может переместиться в точку, где установлен якорь; в видео- или аудио-документе браузер может перейти к времени, на которое ссылается якорь. Важно отметить, что часть URL после #, которая также известна как идентификатор фрагмента, никогда не посылается на сервер вместе с запросом.</dd>
+</dl>
+
+<p>{{Note('Есть и <a href="http://en.wikipedia.org/wiki/Uniform_Resource_Locator">другие составные части и правила</a>, касающиеся URL, но обычно они не используются ни пользователями, ни разработчика. Поэтому не стоит о них беспокоиться, вам не обязательно их знать, чтобы формировать работоспособные URL.')}}</p>
+
+<p>Вам стоит представлять URL как обычный почтовый адрес: <em>протокол</em> обозначает почтовый транспорт, который вы собираетесь использовать,<em>доменное имя</em> - это город, <em>порт</em> - это почтовый индекс; <em>адрес</em> - это номер дома;<em>параметры</em> представляют собой дополнительную информацию, как, например, номер квартиры; и, наконец, <em>якорь</em> представляет собой конкретного получателя, которому вы адресуете своё письмо.</p>
+
+<h3 id="Как_использовать_URL">Как использовать URL</h3>
+
+<p>Каждый URL может быть напечатан напрямую в адресной строке браузера, чтобы сразу получить запрошенный ресурс. Но это только вершина айсберга!</p>
+
+<p>Язык {{Glossary("HTML")}} — <a href="/ru/docs/Learn/HTML/HTML_tags">который будет обсуждать позже</a> — позволяет активно использовать URL для:</p>
+
+<ul>
+ <li>создания ссылок на другие документы с помощью тега {{HTMLElement("a")}};</li>
+ <li>связывания документа с его дополнительными файлами, например с помощью тегов {{HTMLElement("link")}} или {{HTMLElement("script")}};</li>
+ <li>отображения медиа-элементов, например изображений (с помощью тега {{HTMLElement("img")}}), видео (с помощью тега {{HTMLElement("video")}}), звуков и музыки (с помощью тега {{HTMLElement("audio")}}) и так далее;</li>
+ <li>отображения других HTML-документов внутри текущего с помощью тега {{HTMLElement("iframe")}}.</li>
+</ul>
+
+<div class="note">
+<p><strong>Примечание:</strong> При указании URL-адресов для загрузки ресурсов как части страницы (например, при использовании <code>&lt;script&gt;</code>, <code>&lt;audio&gt;</code>, <code>&lt;img&gt;</code>, <code>&lt;video&gt;</code>, и т.д.), следует использовать только URL-адреса HTTP и HTTPS. Использование FTP, например, не особенно безопасно и больше не поддерживается многими браузерами.</p>
+</div>
+
+<p>Другие технологии, такие как {{Glossary("CSS")}} или {{Glossary("JavaScript")}}, также активно используют URL, так что это реально основа веба.</p>
+
+<h3 id="Абсолютные_и_относительные_URL">Абсолютные и относительные URL</h3>
+
+<p>Все, что мы изучали выше - это <em>абсолютные URL</em>. Но так же существуют и <em>относительные URL</em>. Изучим их.</p>
+
+<p>Обязательные части URL во многом зависят от контекста, в котором используется URL. В адресной строке браузера URL не имеет никакого контекста, так что приходится вводить полный (или <em>абсолютный</em>) URL, такие как мы рассматривали выше. Обычно вам не требуется вводить протокол (браузер подставляет HTTP по умолчанию) и порт (который нужен только в том случае, если сервер использует нестандартный порт), но остальные части URL всё равно необходимы.</p>
+
+<p>Когда URL используется в документе, например в HTML-странице, ситуация отличается. Потому что браузер уже знает URL текущего документа и он может использовать эти сведения для дополнения недостающих частей любого адреса, указанного в документе. Простейший пример <em>относительного</em> URL - указание только <em>адресной части</em> URL. А если адрес в URL начинается с символа <code>"/</code>", браузер запросит ресурс от корня сервера, без отсылки к контексту текущего документа.</p>
+
+<p>Разберем это на примерах.</p>
+
+<h4 id="Примеры_абсолютных_URL">Примеры абсолютных URL</h4>
+
+<dl>
+ <dt>Полный URL (такой же, как обсуждали в начале статьи)</dt>
+ <dd>
+ <pre>https://developer.mozilla.org/ru/docs/Learn</pre>
+ </dd>
+ <dt>Скрыт протокол</dt>
+ <dd>
+ <pre>//developer.mozilla.org/ru/docs/Learn</pre>
+
+ <p>В этом случае браузер использует тот же протокол, что использовался для загрузки текущего документа.</p>
+ </dd>
+ <dt>Скрыт домен</dt>
+ <dd>
+ <pre>/ru/docs/Learn</pre>
+
+ <p>Это наиболее частый пример использования аболютного URL в HTML-документе. Браузер использует тот же протокол и то же доменное имя, как у текущего документа. <strong>Примечание:</strong> <em>не возможно скрыть домен, не скрывая при этом протокол, только вместе</em>.</p>
+ </dd>
+</dl>
+
+<h4 id="Примеры_относительных_URL">Примеры относительных URL</h4>
+
+<p>Для лучшего понимания следующих примеров, давайте договоримся, что мы обращаемся к URL из документа, который опубликован по адресу: <code>https://developer.mozilla.org/ru/docs/Learn</code></p>
+
+<dl>
+ <dt>Дочерние ресурсы</dt>
+ <dd>
+ <pre>Skills/Infrastructure/Understanding_URLs
+</pre>
+ </dd>
+ <dd>Поскольку URL не начинается с  <code>/</code>, браузер сделает попытку найти документ в поддиректории относительно текущего документа. В данном примере будет запрошен этот URL: <code>https://developer.mozilla.org/ru/docs/Learn/Skills/Infrastructure/Understanding_URLs</code></dd>
+ <dt>Назад по дереву папок</dt>
+ <dd>
+ <pre>../CSS/display</pre>
+
+ <p>В этом случае, мы используем команду <code>../</code>  — унаследованную из файловой системы UNIX — чтобы сказать браузеру, что он должен подняться на 1 директорию вверх. Соответственно, здесь мы хотим открыть URL: <code>https://developer.mozilla.org/ru/docs/Learn/../CSS/display</code>, который может быть упрощен до вида: <code>https://developer.mozilla.org/ru/docs/CSS/display</code></p>
+ </dd>
+</dl>
+
+<h3 id="Семантические_URL">Семантические URL</h3>
+
+<p>Помимо своего технического значения, URL представляют собой человеко-читаемые записи о местоположении документов на веб-ресурсе. Они могут быть запомнены и любой может ввести их в адресную строку своего браузера. Веб создавался для людей и распространённой практикой является принцип записи URL, который называется  <a href="http://en.wikipedia.org/wiki/Semantic_URL"><em>семантические URL</em></a>.  Семантические URL используют в своём составе слова, значение которых может быть понято любым человеком, даже тем, кто не разбирается в технических нюансах.</p>
+
+<p>Семантика, разумеется, плохо распознаётся компьютерами. Вы наверняка видели URL, которые выглядят как куча случайных символов. Но у семантических URL есть много преимуществ:</p>
+
+<ul>
+ <li>Ими легче управлять.</li>
+ <li>Они дают понять пользователю, что находится по данному URL даже без перехода на страницу.</li>
+ <li>Поисковые системы могут использовать семантику для улучшения классификации страниц.</li>
+</ul>
+
+<h2 id="Следующие_шаги">Следующие шаги</h2>
+
+<ul>
+ <li><a href="/ru/docs/Learn/Understanding_domain_names">Понимание доменных имен</a></li>
+</ul>