Сведения о вопросе

Oleksandr

21:06, 1st October, 2020

Что выбрать: ставить или не ставить слэш на конце URL?

Просмотров: 538   Ответов: 16

elfchat.ru/ru/signup
elfchat.ru/ru/signup/
Знаю что вопрос простой: нужно просто выбрать, но я почему то не могу. Мечусь из стороны в сторону. Прошу помощи!


PS elfchat.ru/ru/signup.html



  Сведения об ответе

fo_I_K

12:57, 29th September, 2020

Вот так пишите ВСЕГДА
www.mydomain.com/site/pages/

Тоесть используйте слеш в конце ВСЕГДА
(кроме адресов файлов: www.mydomain.com/index.htm)

Этим Вы упрощаете работу веб серверу!
(экономите ресурсы планеты, энергию, время....)

Так как если слеш не указать, сервер должен будет
проверить является ли это адресом веб страницы,
тоесть если по указанному пути такой файл,
а если нет, значит это директория.
А вот когда вы указали в конце слеш,
веб сервер СРАЗУ поймет что вы имеете
ввиду именно директорию!


  Сведения об ответе

lool

01:28, 29th September, 2020

я в шоке…
я итак уже детскими словами написал,
а тут еще и минусов наставили…


  Сведения об ответе

prince

00:58, 25th September, 2020

Яндекс, если видит урл без слеша, иногда проверяет такой же урл, но со слешем. В этом случае важно делать 301-й редирект на страницу без слеша (в друпале для этого есть специальный модуль, кажется, GlobalRedirect называется).

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

Ну это все с точки зрения СЕО. А с практической точки зрения — абсолютно все равно как делать, только считается, что со слешем по смыслу должен быть каталог чего-то, а без — страница.


  Сведения об ответе

ASSembler

08:46, 29th September, 2020

В www.ietf.org/rfc/rfc1738.txt этот вопрос не регламентирован.

; HTTP
httpurl = «http://» hostport [ "/" hpath [ "?" search ]]
hpath = hsegment *[ "/" hsegment ]
hsegment = *[ uchar | ";" | ":" | "@" | "&" | "=" ]
search = *[ uchar | ";" | ":" | "@" | "&" | "=" ]

Хотите ставьте '/' в конце, а хотите не ставьте — главное, чтобы ваш сервер этот URL понимал.

Проблемы подстерегают с другой стороны — обычно браузер получает HTML документы, в которых могут быть картинки, с относительными URI, для которых браузер вычисляет абсолютный URL и получается веселуха: /path/to/page.html/image.gif и т.п.

Так что совет — для папок в конце пишите '/', а для файлов не пишите. И тогда браузер правильно вычислит адреса для подключаемых ресурсов.


  Сведения об ответе

park

18:23, 28th September, 2020

Без слеша интересней :)


  Сведения об ответе

lourence

16:15, 28th September, 2020

сейчас понапишут координально разных мнений и ещё больше вас запутают =) Лично моё мнение, слеш для директорий (в случае роутинга, ессесна не настоящих), файлы соответсвенно без слеша.


  Сведения об ответе

lats

10:29, 28th September, 2020

Ставить. Только так можно обеспечить единообразные URL-адреса вне зависимости от того, как именно они реализуются: серверным движком или просто index-файлом в физической папке.

И желательно делать редирект с адреса без слэша на адрес на канонический адрес со слэшом.


  Сведения об ответе

PROGA

12:07, 27th September, 2020

Для тех, кто утверждает, что слеш в конце url нужно ставить и что веб-сервер очень напрягается, если слеш не поставить, прошу выложить кусок кода из apache или nginx отвечающий за реализацию данного алгоритма - это же opensource проекты, всё в свободном доступе.
Поисковикам же совершенно всё равно, по какому адресу обрабатывать страничку, главное чтоб небыло задвоения, поэтому в правилах веб-сервера делаем 301 редирект на какой либо из вариантов.
Поисковики не панацея интернета, и как заметил уважаемый IlVin IlVin
"В www.ietf.org/rfc/rfc1738.txt этот вопрос не регламентирован."
Поисковики пишут универсальные алгоритмы для того чтобы их поиск был качественен, но они не распоряжаются, как должен работать тот или иной веб сервер. Есть запрос по url и есть ответ - всё просто.
Сам я терпеть не могу, когда попадается сайт со слешами на конце особенно г..сайтах. Сайту и так плохо, так еще какой то не компетентный СЕОшник еще больше его запорол.....

Люди, не перебарщивайте и не втирайте про слеш на конце, он там вообще не нужен, т.к. в url нет понятия "Директория" - это не файловая система. URL - это адрес, состоящий из символов, слеш определяет структуру адреса, только и всего.


  Сведения об ответе

repe

15:30, 26th September, 2020

По-моему, надо исходить из семантики: если страница example.com/path/to/page является обычной контентной страницей, грубо говоря, файлом без расширения в терминах ФС, то слэш ставить не нужно; если является «агрегирующей функцией» своих элементов (список, например), особенно если к ним можно обращаться как к example.com/path/to/page/element — слэш нужен.


  Сведения об ответе

PHPH

00:58, 28th September, 2020

Сколько людей, столько и мнений.
Технических предпосылок, которые бы прямо решали, нет.
Мне лично нравится без слэша на конце. Типа firma.ru/contact


  Сведения об ответе

9090

17:48, 28th September, 2020

делаю новый проект
предусмотрен слеш в конце адресной строки,
если это конечно не конкретный файл ( image.png )


  Сведения об ответе

JUST___

20:13, 26th September, 2020

правильнее со слешом, так как «образно говоря» site.ru/path/to/page/ подразумевает site.ru/path/to/page/index.html (более того если вы напишите site.ru/path/to/page/index.html тотже гугль будет долбиться в итоге в site.ru/path/to/page/)
а если вы напишите site.ru/path/to/page это будет ссылка на непонятно что.
Другое дело может быть например в случае site.ru/path/to/last.page
также совершенно валидно site.ru/path/to/page.html

Не думайте как правильно — подумайте как «семантичней»


  Сведения об ответе

PHPH

15:09, 29th September, 2020

данная статья показалась мне довольно убедительной
imperacms.ru/docs/seo/url-slash-or-not


  Сведения об ответе

COOL

14:38, 26th September, 2020

Например, Chrome в адресной строке убирает из адреса http:// в начале и слеш в конце. Считается, что это повышает читаемость.


  Сведения об ответе

park

08:32, 28th September, 2020

Сейчас уже такие URL делают, что закачаешься:
http://www2.sub.domain.com/fol.der/#/my_page:here.html?bla=bla&foo=bar

Так что пишите как хотите — всем пофиг что там в строке адреса.
По поводу замечания о СЕО теоретически согласен, но думаю поисковики уже и с этим разбираются.


  Сведения об ответе

dumai

03:28, 26th September, 2020

Никаких «файлов» у веб-сервера нет. Есть запросы, в ответ на которые сервер может выдать тот или иной контент. ИМХО, если в УРЛе встречается "/index.html", что-то очень не то с разработчиками или админами.

Слеш или не слеш — зависит от настроек сервера. Как правило, УРЛ без слеша приводит к дополнительному запросу на сервер, за исключением запроса на рут сервера:

www.domain.com и www.domain.com/ обрабатываются одинаково.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться