Какие преимущества использования ID (number) весте с slug в URL?
Часто вижу на сайтах что в URL добавляют номер записи (Primary key) в БД к слагу в URL.
Пример:
/questions/411407/is-it-ok-to-include-an-id-inside-the-url
где ID - '411407' а SLUG: 'is-it-ok-to-include-an-id-inside-the-url'
По каким причинам это делают? И есть ли в этом смысл с точки зрения производительности, если у нас в БД как ID так и SLUG - имеют UNIQUE index.
Часто вижу такое формирования URL, и не могу понять почему делают именно так.
Это удобно, если url записи может поменяться, чтобы старые ссылки не сломались. Выборка из базы идёт по ID, сравнивается slug, если актуален, то выдаётся запись, если нет, то редирект на актуальный slug
Именно для SEO не никакой разницы между /questions/411407/is-it-ok-to-include-an-id-inside-the-url и /questions/is-it-ok-to-include-an-id-inside-the-url
PazzaVlad, для сео разницы нет, но если slug поменяется - то сайт отдаст 404 на запрос несуществующей страницы. а с ID в ссылке поиск ведется по ID, без учета slug'а. если слаг не совпадает - то пользователя редиректит на новый слаг. в итоге и юзвери сыты и поисковики довольны.
padlyuck, да, пожалуй это единственный use case. Хотя наверное в 99.9999% слаг не будет меняться (если хранить его в отдельной колонке и не менять при изменении названия страницы).