В прошлом году Дэниэл Стенберг, создатель curl , написал пост об одном забавном URL:
Пост интересен, рекомендую его прочитать. Автор объясняет, как устроен URL, и как различные системы его обрабатывают.
Но в том посте не разобрано, в частности, как сказывается такая разница в обработке одних и тех же URL различными системами. В этой лекции 2017 года (слайды, видео) Оранж Цай рассматривает и многие другие несогласованности между различными библиотеками, а также риски из области безопасности, возникающие из-за такой несогласованности.
В лекции данная тема раскрыта в мельчайших (и очень увлекательных) деталях, но здесь я хотел бы резюмировать суть.
Элементы URL
Как в вышеупомянутом посте, так и в лекции, на которую я обратил ваше внимание, сказано, что определить URL непросто. Для этого существует RFC, спецификация WHATWG и множество разношёрстных реализаций.
В самом общем виде URL состоит из следующих частей:
- scheme : используемый протокол (например, http или https ).
- username:password : Сайты, на которых используется базовая схема аутентификации, позволяют при аутентификации вставлять ваши имя пользователя и пароль прямо в URL. Такая практика считается очень небезопасной, поэтому не так много сайтов, где она поддерживается.
- host : Это домен или IP-адрес, к которому вы хотите подключиться (например, google.com или 127.0.0.1 ).
- port : порт напоминает номер абонентского ящика, и по этому номеру можно связаться с хостом. Если такого порта нет, то по умолчанию в такой схеме используется 80 для http и 443 для https ).
- path : это конкретная веб-страница на хосте. Например, путь к оригиналу этой статьи — /posts/what-is-a-url.html
- query : это коллекция параметров, обычно представленных в форме пар key=value , которые объединяются знаком localhost is not allowed!») requests.get(url)
Как мы реализуем isLocalHost ? Для начала давайте побеспокоимся только об IP-адресах. Можно вспомнить различные сложности, возникающие при предоставлении адресов IPv4 и IPv6. Поэтому не будем сравнивать их с конкретными строками, а лучше преобразуем адреса в десятичное представление и сравним десятичные значения (как рекомендовано в RFC). Таким образом, все 127.0.0.1 , 127.0.1 и 127.1 будут отображаться на одно и то же значение: 2130706433 . В таком случае код может принять вид
Как зайти в браузер на телевизоре смарт тв
def isLocalHost(hostname): if isIPv4(hostname): decimal = int(ipaddress.IPv4Address(hostname)) return decimal == 2130706433 if isIPv6(hostname): decimal = int(ipaddress.IPv6Address(hostname)) return decimal == 1 return FalseЭто уже выглядит довольно хорошо, за такой код можно и по плечу программиста похлопать. Но злоумышленник берёт и посылает нам URL: http://0:9000/shutdown . Как разобрано на приведённых выше слайдах, 0 в Linux отображается на localhost! Поскольку 0 не равно 1 или 2130706433 , этот запрос проходит нашу валидацию.
Все об URL: понятие, структура, виды и рекомендации по созданию
URI, URL, URN. Что это, чем отличаются
Английская аббревиатура URL расшифровывается как Uniform Resource Locator, что в переводе на русский означает «унифицированный указатель ресурса». Впервые URL стал применяться в 1990 году. Слава его изобретения принадлежит создателю Всемирной паутины — Тиму Бернерсу-Ли.
Что такое URL
Изначально УРЛ применялся для обозначения размещения файлов в Интернете, но в настоящее время используется для указания расположения почти всех веб-ресурсов. URL может обозначать путь как к веб-сайту, так и к какому-то определенному документу или изображению. Чтобы перейти к нужному сайту или файлу, пользователю нужно написать в адресной строке браузера соответствующий УРЛ. Например, URL https://timeweb.com/ru/community открывает стартовую страницу сайта хостингового сообщества «Timeweb Community».
Определить URL-адрес веб-страницы просто — он показан в адресной строке браузера. Оттуда его можно скопировать, кликнув по адресной строке правой кнопкой мыши (при этом адрес выделяется) и в контекстном меню выбрав команду «Копировать».
Чтобы скопировать адрес отдельного изображения на странице, нужно кликнуть правой кнопкой мыши по картинке и выбрать пункт «Копировать адрес изображения» или «Копировать URL картинки» (в разных браузерах название команды может отличаться).
Для копирования адреса документа в контекстном меню ведущей к нему ссылки следует выбрать команду «Копировать адрес ссылки».
Во всех случаях URL окажется в буфера обмена, откуда его можно вставить в адресную строку браузера, переслать в сообщении либо вставить в текстовый документ.
Зарегистрируйте ваш домен в популярной зоне
От 99 рублей в год
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостейСтруктура URL адреса
URL-адрес, который мы видим в адресной строке браузера, состоит из нескольких частей:
В начале адреса (1) всегда указан протокол (в некоторых браузерах по умолчанию он может быть скрыт и становится виден при щелчке по адресной строке). Если мы просматриваем веб-страницу, это будет протокол передачи данных «http» или его форма «https» с поддержкой шифрования для установки безопасного соединения. Однако URL может начинаться с других обозначений, например:
После протокола (2) следует доменное имя сайта (хост) или в редких случаях его IP-адрес. Также в некоторых случаях URL-адрес может содержать номер порта, например, его можно увидеть в сетевых приложениях (выглядит это так: //example.com:8080).
Затем указывается путь к странице (3), состоящий из каталогов и подкаталогов, который, в свою очередь, включает в себя ее название.
URL также может включать параметры, которые указываются после знака «?» и разделяются символом «sxsrf=ALeKk02BP8tO_kCAffUrYqQOwhLV3p_jdw%3A1605124767263ei=n0KsX6mcDO-grgT7tpeYDAoq=urlsclient=psy-abuact=5
Конечный компонент URL, который пользователь может увидеть в документах большого объема, состоящих из нескольких разделов, — это якорь, которому предшествует знак решетки «#». Часть адреса после этого знака ссылается на определенный абзац внутри страницы сайта. Пример: если на странице Википедии со статьей «URL» перейти по ссылке «Структура URL» в блоке «Содержание», унифицированный указатель ресурса в адресной строке браузера примет такой вид:
https://ru.wikipedia.org/wiki/URL#Структура_URL
Виды URL
URL-адреса веб-страниц бывают статические и динамические.
- Статический URL представляет собой постоянный адрес, он остается неизменным на протяжении всего времени, пока владелец сайта сам не внесет в него изменения. Такие адреса не содержат дополнительных параметров. Пример: https://timeweb.com/ru/community/articles/v-chem-sostoit-raznica-mezhdu-domenom-hostingom-i-saytom.
- Динамические адреса веб-страниц генерируются в ответ на запросы пользователей и содержат разделители «?», «=», «bbn=16225009011ref=nav_em__nav_desktop_sa_intl_computers_and_accessories_0_2_21_6
С точки зрения SEO предпочтительнее статические ссылки, так как динамические URL имеют ряд недостатков:
- они бывают очень длинными, настолько, что могут не помещаться в строке поиска и обрезаться при копировании.
- динамические адреса сложно запоминаются и не дают пользователю понимания, какое содержимое отобразится на странице при переходе по ссылке;
- CTR (click-through rate — показатель кликабельности) у них ниже, чем у статических;
- в динамических URL не учитываются ключевые слова.
Форматы URL
Транслитерация
Для обозначения названий статей обычно используют транслитерацию. Такие адреса легко читаются и понятны для восприятия пользователей.
По такому адресу сразу можно судить, какое содержимое вы увидите на странице. Поисковые системы легко распознают в подобных адресах ключевые слова, что также оказывает положительное влияние на SEO. Если в URL используется транслитерация, становится четко видна структура сайта и, чтобы попасть в нужный раздел, пользователь просто может стереть в адресной строке часть адреса.
Латиница
Латинские URL представляют собой адреса, переведенные на английский язык. Например, вместо «/novosti/» в адресе будет значиться «/news/».
Такой формат УРЛ часто используется для обозначения веб-страниц категорий и рубрик. Этот вариант считается универсальным, так как легко воспринимается пользователями и без труда обрабатывается поисковыми роботами.
Кириллические URL
Такой формат URL чаще всего применяют в кириллических доменах или когда часть адреса не очень длинная.
К их преимуществам относятся:
- удобство и простота запоминания;
- достаточное количество свободных доменов из-за невысокой популярности кириллицы;
- возможность использования ключевых слов в УРЛ.
Однако кириллические URL имеют существенный недостаток: при копировании такого адреса и вставки его в сообщение для отправки кому-либо или вставки в текстовый редактор, вы получите непонятный набор знаков, наподобие:
https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0
Это объясняется тем, что запись URL-адресов возможна только определенными символами из разрешенного набора, а символы кириллицы в него не входят. Поэтому адрес, в котором используется кириллица, шифруется, хотя при этом ссылка все равно будет работать.
К минусам кириллических УРЛов можно отнести и трудность для восприятия зарубежными пользователями, привыкшими к латинским символам, а также сложности при чтении адресов этого формата поисковыми роботами (такие URL приходится переводить в понятный для робота вид).
Человекопонятные URL
Поисковые системы рекомендуют создавать дружественные адреса веб-страниц, по которым и пользователи, и поисковые роботы смогут судить, какая информация на этой странице находится. Например, по URL-адресу вида: www.yoursite.net/viewpage.php?page_id=23 понять это невозможно, а адрес www.yoursite.net/contact/ сразу дает представление о содержании страницы. Такие УРЛы называют человекопонятными (ЧПУ).
- ими легко делиться с другими людьми — можно не только переслать в сообщении, но и продиктовать устно;
- в такой URL можно вставить ключевые слова;
- ЧПУ легко запомнить, так как он вызывает простые и понятные ассоциации;
- они позволяют быстрее перемещаться по сайтам — вы можете удалить часть адреса с конца и сразу попасть в нужный раздел, что избавляет от поиска соответствующей ссылки на сайте.
При формировании ЧПУ на своем сайте следует придерживаться определенных правил:
- использовать транслитерацию в соответствии с приведенной ниже таблицей (с одним исключением — «ый» — транслитерируется как «iy»).
- пробелы, а также знаки препинания менять на дефис или нижнее подчеркивание, а два таких символа подряд заменять на один;
- удалять символ «-» в начале или в конце адреса;
- не использовать заглавные буквы, так как УРЛы чувствительны к регистру;
- стараться формировать короткие URL.
Рекомендации по созданию URL
- Правильно сформированный URL должен включать в себя ключевые слова, так как поисковые системы учитывают этот фактор при ранжировании. Однако не стоит злоупотреблять ими в УРЛ, чтобы поисковик не посчитал, что вы применяете спамные методы продвижения.
- Следует создавать максимально короткий URL, желательно не более 4-5 слов, а общая длина адреса не должна быть более 80 символов. Длинные ссылки не показываются в поисковой выдаче, адрес может обрезаться на середине.
- Чем дальше подраздел сайта или веб-страница находится от главной, тем длиннее будет URL конечной страницы. Поэтому иногда необходимо убирать из URL упоминания о категориях и рубриках.
- Латинские символы в URL более предпочтительны, чем символы кириллицы, так как такие сайты легче продвигать.
- Рекомендуется разделять слова в адресе веб-страницы символом дефиса «-», а не нижнего подчеркивания «_».
- Если вы хотите изменить адреса страниц, чтобы избежать их дублирования, вам обязательно нужно настроить 301 редирект.
Соблюдайте указанные выше рекомендации, формируйте человекопонятные URL, чтобы при прочих равных условиях получить преимущество над другими сайтами.
Источник: timeweb.com
URL (URL-адрес)
URL (адрес сайта или отдельной страницы) — это специальная форма обозначения индивидуального адреса ресурса в интернете. В данном случае под ресурсом можно понимать сайт, отдельный документ на сайте (страница), файл или изображение. Введя URL в адресную строку браузера, пользователь может отыскать требуемый доумент или сайт.
Простым и понятным языком это можно назвать так: по URL адресу пользователь получает информацию о том, в каком «ящике» расположены его «носки». URL (ЮРЛ, УРЛ) — это аббревиатура, которая скрывает термин Universal Resource Locator. В переводе — универсальный указатель местоположения документа в Сети интернет.
Структура URL
У адреса URL имеется вполне конкретная структура, которая включает:
- Метод доступа к ресурсу, он же именуется сетевым протоколом;
- Авторизация для доступа;
- Хост– DNS адрес, прописываемый как IP адрес ;
- Порт – обязательный атрибут при указании IP адреса (по умолчанию — 80 порт);
- Путь – информация о методе получения доступа;
- Параметр (якорь) – данные о файле внутри ресурса (ссылка на абзац внутри страницы сайта).
Как узнать URL-адрес
У некоторых пользователей возникает проблема с тем, чтобы определить адрес URL. Наиболее простым методом является просмотр и копирование его непосредственно из адресной строки браузера. Для этого его следует выделить и нажать CTRL+C (см. рис. ниже) либо вызвать правой клавишей мышки контекстное меню и кликнуть «копировать».
URL-адрес есть не только у сайтов, но и у отдельных изображений или файлов. Для определения их адреса требуется кликнуть на картинку правой кнопкой мыши, а потом выбрать из контекстного меню опцию «Копировать URL картинки».
В случае с документом действия должны быть аналогичными, а выбрать нужно пункт «Копировать адрес ссылки».
В результате копирования ссылка перемещается в буфер обмена, а далее ее можно использовать в новой адресной строке, переслать в сообщении или разместить в текстовом документе.
Примеры URL
Пример URL адреса с ЧПУ
:
Пример URL адреса без ЧПУ:
Основной частью URL-адреса является доменное имя сайта, выбор которого следует проводить с учетом некоторых особенностей, чтобы обеспечить в дальнейшем эффективное раскрутка сайта в поисковых системах.
URL-шифрование
Уже понятно, где можно взять URL адрес ресурса. Однако иногда пользователей озадачивает то, что они видят в результате копирования некоторых ресурсов и русскоязычными названиями. При копировании появляется непонятный набор символов, не похожий на тот, что был в адресной строке.
Это связано с тем, что запись адресов может реализовываться только конкретными символами из разрешенного набора. Кириллица в этот перечень не включена. Если в адресе используется кириллица, то он шифруется, но от этого его суть не изменяется.
История URL-адреса
URL адрес обладает собственной историей, как и любое другое понятие. По сути, он необходим для того, чтобы указать конечный сервер с данными. Впервые он появился в Женеве, а создал его сам Тим Бернерс-Ли в 1990 году.
Первое время URL использовались для обозначения расположения конкретных файлов в интернете, но позже разработчики пришли к выводу, что URL адреса целесообразно использовать и для того, чтобы дать пользователям доступ к иным ресурсам в молодом на тот момент интернете.
Как правильно формировать URL-адрес
- 1 В правильном УРЛе должны содержаться ключевые слова или фразы
, так как при ранжировании
поисковая система будет это учитывать. При выдаче результатов в браузере, если запрос пользователя и ваш URL имеют общий ключ – он будет выделяться жирным.
- 2 В URL-адрес не рекомендуется прописывать более 4-5 слов или общее количество не более 80 символов. В поисковой выдаче длинные ссылки не отображаются. Ваш урл может обрываться на середине, что снизит вес ключевых слов.
- 3 Строение УРЛ зависит от уровня вложенности страницы на сайте. Чем дальше страница (подраздел) находится от главной, тем длиннее может быть урл конечной страницы. Важно в таких случаях убирать лишнее из адреса страницы – упоминание о категориях, рубриках. Не забываем правило 2 пункт.
- 4 Рекомендуем при составлении урла разделять слова дефисами «-», а не нижними подчеркиваниями « _ ».
- 5 Адреса, написанные кириллицей допускаются к индексированию
поисковиками, но продвигать такие сайты или страницы будет намного сложнее. Если вы захотите вставить ссылку на ваш сайт в рекламную кампанию, вам будет необходимо сделать перекодировку вашего URL. Поэтому латинские символы в адресе страниц более предпочтительны.
- 6 URL адрес должен быть прописан только в нижнем регистре, то есть никакого КАПСА. Иначе могут быть проблемы с индексацией страницы.
- 7 Ваш УРЛ должен быть читабельным, советуем использовать транслитерацию /klyuchevye-slova/latinskie-simvoly.
- 8 В URL адресе страницы не должно быть пробелов, знаков препинания и лишних символов.
Виды URL-адресов
URL-адреса подразделяются на статические и динамические url-адреса.
Кроме того, url-адреса бывают абсолютные и относительные.
Пример абсолютного url-адреса (содержит полный — абсолютный адрес урла): https://site.ru/uslugi/kupit-korovu/.
Пример относительного url-адреса (содержит адрес относительно корня сайта): /uslugi/kupit-korovu/. Относительные урлы применяются, например, при автоматическом клонировании сайтов со всем контентом на поддомены в случае регионального продвижения сайта.
Ещё по теме:
Услуги, связанные с термином:
- SEO-продвижение
- Контекстная реклама
- Базовая оптимизация
- Настройка HTTPS
Источник: siteactiv.ru