Zawsze chciałem używać losowo generowanych ciągów dla identyfikatorów moich zasobów, więc mogłem mieć krótsze adresy URL takie: / user / 4jz0k1
Ale nigdy tego nie zrobiłem, ponieważ martwiłem się, że losowe generowanie ciągów tworzy rzeczywiste słowa, np .: / user / f * cker. Powoduje to dwa problemy: może być mylące lub nawet obraźliwe dla użytkowników, a także może popsuć SEO.
Potem pomyślałem, że wszystko, co muszę zrobić, to ustawić stały wzór, taki jak dodawanie liczby co 2 litery. Byłem bardzo zadowolony z mojej metody „generate_safe_uuid”, ale potem zdałem sobie sprawę, że było to lepsze tylko dla SEO, a gorsze dla użytkowników, ponieważ zwiększyło współczynnik generowanych słów, np .: / user / g4yd1ck5
Teraz myślę, że mógłbym stworzyć metodę „replace_numbers_with_letters” i sprawdzić, czy nie utworzyła żadnych słów w słowniku lub czymś podobnym.
Jakieś inne pomysły?
ps. Pisząc to, zdałem sobie również sprawę, że sprawdzanie słów w więcej niż jednym języku (np. Angielskim i francuskim, hiszpańskim itp.) Byłoby bałaganem i znów zaczynam kochać identyfikatory zawierające tylko liczby.
AKTUALIZACJA
Niektóre linki każdy powinien przeczytać:
http://thedailywtf.com/Articles/The-Automated-Curse-Generator.aspx
http://blogs.msdn.com/b/oldnewthing/archive/2008/06/27/8659071.aspx