Question Comment fonctionne un raccourcisseur d'URL? [fermé]


Je me demande comment fonctionne un raccourcisseur d'URL, par exemple comment extraire le texte de la barre d'adresse et le mapper pour corriger l'URL, plus tard le rediriger. Quel langage de programmation utilisent-ils? Comment maintiennent-ils l'historique de la cartographie? Comment assurent-ils l'unicité de l'URL raccourcie? Comment un profane peut-il le désinstaller sans visiter l'URL?


72
2017-12-31 23:51


origine


Réponses:


Wiki est votre ami

Fondamentalement, un site Web portant un nom plus court est utilisé comme espace réservé, tel que bit.ly.

Ensuite, bit.ly génère une clé à fournir par l'utilisateur, générée de manière aléatoire pour ne pas se répéter. Avec 35 options de caractères et environ 8 valeurs, faites le calcul. C'est beaucoup de clés possibles. Si une URL est égale à une clé existante, je me rappelle avoir lu quelque part qu'elle réutilise également les clés.

Ils n'utilisent pas vraiment un langage de programmation spécifique, ils utilisent simplement une simple redirection d'URL, ce qui peut être fait avec HTML je crois.


33
2018-01-01 00:06



Les raccourcis d'URL génèrent simplement un shortcode, mappent l'URL cible au shortcode et fournissent une nouvelle URL. La consultation de l'URL effectue une recherche dans la base de données avec le shortcode comme clé et vous redirige vers l'URL cible. Il n'y a pas d'association algorithmique entre une URL raccourcie et une URL de destination, vous ne pouvez donc pas la "désassembler" sans passer par les systèmes du raccourcisseur d'URL.

Vous pouvez le faire avec n'importe quel langage de programmation et magasin de données. La génération de code est triviale pour garantir également l'unicité; Si vous aviez une clé entière primaire incrémentée, vous pourriez simplement encoder la clé en base62 et la servir. Puisque les codes sont de nature incrémentale, vous ne serez jamais en conflit.


21
2018-01-01 00:01



Le processus est assez simple en fait: un script demande l'URL, génère une chaîne aléatoire (et vérifie que cette chaîne n'est pas déjà utilisée) et place les deux dans une sorte de base de données. Lorsque vous demandez une URL, un autre script recherche la chaîne aléatoire dans la base de données et, si elle est trouvée, vous redirige vers le site.

Ceci est bien sûr plus compliqué dans la production en raison des fonctionnalités nécessaires telles que la prévention des abus, le filtrage des URL, la prévention du spam, la vérification des URL, etc. Mais elles sont assez simples à mettre en œuvre.


La langue n'est pas pertinente, la plupart du temps, tout le monde le fera.


18
2018-01-01 00:01