Школа
Интерфейс

Слеш на конце урлов

Какую роль играет слэш на конце урлов на вашем сайте? Например, https://bureau.ru/soviet/20140324/

Не тот ли это пример дизайна, когда нужно выкинуть лишнее и писать: https://bureau.ru/about

Павел Головин
8 дек 2020
👁 8855   🗩9
Интерфейс

Слеш на конце урлов

Какую роль играет слэш на конце урлов на вашем сайте? Например, https://bureau.ru/soviet/20140324/

Не тот ли это пример дизайна, когда нужно выкинуть лишнее и писать: https://bureau.ru/about

Павел Головин
8 дек 2020
👁 8855   🗩9
Илья Бирман
Арт‑директор и соавтор курса «Пользовательский интерфейс и представление информации»
Полезно
 23
23
Непонятно
  
Войдите в Бюросферу, чтобы голосовать

Писать или не писать слеши на концах урлов — дело вкуса. Главное, выбрать вариант и придерживаться его. Когда придерживаешься, вкусы становятся редполитикой.

О вкусах можно и поспорить. Для меня адрес без слеша на конце выглядит недописанным. Адрес главной страницы сайта — это сам слеш /. Тогда почему страница «О компании» должна играть по другим правилам и уже не содержать слеша в конце? Кривоватенько!

В ваших примерах куда больше внимания привлекает конструкция https:// в начале. Если уж вы пишете даже её, то слеш в конце написать сам бог велел:

Норм

bureau.ru

bureau.ru/about

https://bureau.ru/

https://bureau.ru/about/

Ну так

bureau.ru/

bureau.ru/about/

https://bureau.ru

https://bureau.ru/about

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

Полезно
 23
23
Непонятно
  
Войдите в Бюросферу, чтобы голосовать
Отправить
Поделиться
Поделиться
Запинить
Твитнуть

Комментарии

Fedir Shulenok

Слеш — это разделитель. Такой же как, например, средняя точка: https://bureau.ru/bb/soviet/20161024.

Оставлять разделитель в конце строки — ну, такое себе.

Хочется отметить, что любое правило имеет рамки применимости. Страницы для пользователей без сомнения должны редиректить на каноничную версию. Но если у вас API — тем более, если это API принимает не только GET‑запросы, — то никаких редиректов быть не должно. Неверный адрес должен отдавать 404.

Ярослав Шаповал

Из адреса со слешем в конце и так убрали индексный файл. Пощадите финальный слеш.

Для адресов с непривычными доменами (.team, .guru, .aero и т.д), чтобы было однозначно понятно, что это адрес сайта, можно оставить схему :// без http и https.

Михаил Подивилов

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

К слову, если вы оставите пользователю ссылку на директорию без слэша, веб‑серверу всё равно придётся перенаправить вас на страницу, содержащую слэш.

Плюсы слеша существуют исключительно в мире программиста: index.html, относительные ссылки, — вот это всё.

Для посетителя сайта слеш в конце адреса — шум. Он уменьшает «data/ink ratio», при этом не несёт смысловой нагрузки. В редких случаях, когда адрес страницы приходится вводить вручную (например, с распечатки), слеш в конце адреса замедляет попадание на сайт. Для пожилого человека, не понимающего нюансов адресации, это вполне ощутимый дополнительный барьер.

Браузеры на пути к использованию HTTPS по умолчанию, то есть включение протокола в отображаемые адреса скоро потеряет смысл. https://bureau.ru/about/bureau.ru/about

Ещё один пример в колонку «Норм» Ильи показан в видео Горбунова:
https://youtu.be/5NZSHE89990?t=155

Кажется, наличие конечных слешей зависит от задачи, от контекста. Если УРЛ написан в кадре видео — очевидно, нажать на него невозможно. Тогда задача — помочь пользователю прочитать или переписать УРЛ, и лишние знаки ни к чему (если, конечно, воздуха достаточно вокруг). Если это ссылка, особенно в тексте, то дополнительный разделитель поможет пользователю выделить ссылку из остального текста, дополнительно обозначив конец.

Должна ли ссылка вообще быть как УРЛ? Опять‑таки, зависит от задачи.

Должен ли УРЛ писаться непременно так, как он работает на сайте? Зависит, действительно, от настройки редиректов.

Антон Курьянов

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

Alexander Mextner

Думаю, важно сказать

  1. о первопричинах. Слеш на конце это признак директории Linux‑сервера, без него — файл. Сейчас это стало не актуально и при необходимости / добавляется или наоборот вбирается в nginx для нормализации, принятой в конкретном сервисе на сервере. Да и файлов и директорий чаще всего нет, путь передаётся интерпретатору.

  2. а так же поговорить об .aspx, .php, .html других расширениях. Вот как раз тут и проявляется интерпретатор, упомянутый выше. Если не настроить nginx или другой «софт сервер» перенаправлять пути без расширения на нужный скрипт, то php или iis, или что там у вас ещё будет показывать не нужные человеку детали реализации и подсказывать ему что с сервисом лучше не связываться.

  3. Префиксы: лучше без www, но если домен экзотичный типа Moscow.business, то ЦА может не понять, следует протестировать. Протокол сейчас должен быть https:// (с ssl шифрованием), его не нужно писать. К счастью, его не печатают на баннерах, но в переписках и вообще в цифровой среде из‑за поведения браузеров протокол остаётся.

Alexander Mextner

Ответ про редиректы. Редиректы — это крайняя мера. Адреса, видимые пользователю и поступающие к интерпретатору, могут сопоставляться без них.

Цель рубрики — обсуждение вопросов дизайна, веб-разработки, переговоров, редактуры и управления.
Комментарии модерируются. Мы публикуем комментарии, которые добавляют к уже сказанному новые мысли и хорошие примеры.

Рекомендуем другие советы