Я заметил, что некоторые сайты запрещают изменение слага в URL. Например, в stackoverflow, если вы меняете слаг этого поста, когда вы загружаете страницу, реальный слаг возвращается.
Это не Javascript, поэтому я предположил, что он управляется PHP. Я не вижу, как это сделать, и я действительно не могу найти какой-либо ответ в Интернете … Кто-нибудь знает?
Как отмечает MattWritesCode в комментарии, важной частью является ID. Что вы можете сделать, это загрузить канонический слаг из базы данных с помощью идентификатора, и если предоставленный пользователем слаг не совпадает с тем, что имеется в базе данных, выполните перенаправление на URL канонического идентификатора + слаг.
Других решений пока нет …