Почему некоторые URL содержат как числовой идентификатор, так и имя?

StackOverflow https://stackoverflow.com/questions/420380

  •  05-07-2019
  •  | 
  •  

Вопрос

Мне интересно, почему ссылка на профиль выглядит так:

http://stackoverflow.com/users/ID/NAME

не просто:

http://stackoverflow.com/users/ID

или даже лучше:

http://stackoverflow.com/users/NAME

Может ли быть пара пользователей с одинаковым именем? Или один пользователь может иметь много имен?

Это было полезно?

Решение

Все SO-URL имеют вид id / описание формы, где идентификатор уникален, а описание является необязательным. Так что / users / 12890 / arne-burmeister совпадает с / users / 12890 / huhu и <код> / вопросы / 420380 / почему-делает-на-ссылку-к-гается profile-have-both-id-and-name совпадает с / questions / 420380 / Foo . При поиске используется только идентификатор, но это намного лучше для рейтинга в Google, когда в URL появляется пользователь / вопрос / что-либо-что-можно найти (также для людей это гораздо более наглядно; -).

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

Другие советы

Часть после последней косой черты, похоже, связана с SEO (то есть делает URL более выразительным).
По URL-адресам, которые я проверял, вы могли заменить эту часть на то, что хотели, она все еще работала. Таким образом, URL http://stackoverflow.com/users/37086/othername по-прежнему указывает на ваш профиль.

Для этого существует запрос пользовательского голоса , Если вы хотите, чтобы это произошло, то uservoice - подходящее место для обсуждения / голосования.

Я бы предположил, что поиск в базе данных исключительно по строке имени будет стоить дороже, чем числовой поиск по первичному ключу, даже если столбец имени проиндексирован. Затем добавляется имя, чтобы сделать URL-адреса более удобными для пользователей и оптимизировать SEO.

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

Попробуйте изменить или удалить имя и посмотреть, что произойдет.

Я думаю, что именно так ваши URL говорят вам, чего ожидать, но приложение не нуждается (или фактически не использует) эту информацию.

Amazon делает что-то очень похожее со своими книгами, если я правильно помню: у них есть и ASIN (их внутренний идентификатор), и название книги в URL, но только когда-либо ищем ASIN.

Просто размышления. Идентификатор позволяет очень быстро получить данные, представленные на странице профиля. Это имя только для людей и игнорируется, так как мне легче отрицать, что вы rkj, а я phihag, чем ваш ID 37086, а мой 35070.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top