Cum construiești un scurtator de URL-uri
Un scurtator de URL-uri stochează o adresă web lungă sub un cod scurt și redirecționează pe oricine vizitează linkul scurt. Nucleul este minuscul — un tabel și o rută de redirecționare — de aceea este un proiect clasic pentru început. Ce face un scurtator real util este restul: un domeniu scurt, slug-uri personalizate, numărul de clicuri, posibilitatea de a edita unde duce un link și împiedicarea spamerilor să-ți folosească domeniul pentru a ascunde linkuri de phishing. Hotărăște de la început dacă este pentru tine și echipa ta sau deschis publicului, pentru că scurtatoarele publice atrag rapid abuzuri.
Ce are nevoie un scurtator de URL-uri
Date
| Tabel | Câmpuri |
|---|---|
| Linkuri | Cod scurt, URL de destinație, proprietar, titlu, data creării, indicator de activ, dată de expirare opțională |
| Clicuri | Link, moment, referrer, țară, tip de dispozitiv |
| Domenii (opțional) | Domeniile scurte personalizate și proprietarii lor |
Pune un index unic pe codul scurt. Două linkuri cu același cod este singurul bug care trebuie să fie imposibil.
Pagini și rute
- Ruta de redirecționare —
/{code}caută codul și redirecționează. Este singura rută pe care o atinge majoritatea vizitatorilor, deci trebuie să fie rapidă și să nu arate niciodată interfața aplicației tale. - Creare link — lipești un URL, alegi opțional un slug personalizat și primești linkul scurt cu un buton de copiere.
- Lista de linkuri — linkurile tale cu numărul de clicuri, căutare și comutatoare de activare.
- Detaliul linkului — clicuri în timp, principalii referrer, țările și dispozitivele. Editezi destinația.
- Pagină de negăsit pentru coduri necunoscute sau dezactivate.
- Cod QR pentru fiecare link — ieftin de adăugat și des cerut.
Decizii și compromisuri
Tipul redirecționării. O redirecționare 301 (permanentă) poate fi păstrată în cache de browsere, așa că vizitatorii reveniți ocolesc serverul tău: pierzi clicuri și nu poți schimba destinația pentru ei. Folosește 302 sau 307 dacă urmărești clicurile sau permiți editarea. Asta fac majoritatea scurtatoarelor cu urmărire.
Coduri scurte. Codurile aleatorii de șase sau șapte caractere (litere și cifre) sunt greu de ghicit și au loc suficient. Evită caracterele care se confundă (0/O, 1/l) dacă oamenii vor scrie linkurile de mână. Codurile secvențiale arată câte linkuri ai și permit oricui să le parcurgă.
Slug-uri personalizate. /lansare bate /x7Kp2q. Rezervă cuvintele pe care le folosește aplicația ta (login, api, admin), blochează slug-urile ofensatoare dacă instrumentul este public și hotărăște dacă slug-urile sunt sensibile la majuscule. Varianta insensibilă la majuscule este mai prietenoasă.
Viteză. Un scurtator adaugă un pas înaintea fiecărei vizite. Păstrează ruta de redirecționare la o singură căutare indexată și înregistrează clicul după trimiterea redirecționării (sau în fundal), ca urmărirea să nu încetinească niciodată vizitatorul. Aplicațiile pe găzduire care adoarme când sunt inactive pot dura puțin mai mult la prima vizită după o perioadă liniștită; pentru un instrument personal sau de echipă, de obicei asta este în regulă.
Statistici de clicuri și confidențialitate. Numărarea clicurilor, a referrer-ilor și a unei țări aproximative este standard. Stocarea adreselor IP complete și construirea de profiluri ale persoanelor este locul unde începe legislația privind confidențialitatea. Stochează ce vei analiza efectiv și agregă acolo unde poți. Vezi cum adaugi analize în aplicația ta.
Domeniul. Linkul este doar atât de scurt cât este domeniul său. Cumpără un domeniu scurt și indreaptă-l spre aplicație — vezi cum conectezi un domeniu personalizat. Multe găzduiri preferă un subdomeniu (go.numemarca.ro) în locul unui domeniu rădăcină, care este mai simplu de conectat.
Abuzul. Dacă oricine poate crea linkuri, spamerii îți vor folosi domeniul pentru a ascunde phishing și malware, iar domeniul tău poate ajunge pe liste de blocare. Pentru un scurtator public: cere conturi, limitează crearea, verifică destinațiile față de o listă de URL-uri periculoase, cum este Google Safe Browsing, blochează linkurile către propriul scurtator (bucle de redirecționare) și construiește un comutator de administrator care dezactivează instant orice link. Un scurtator privat, doar pentru echipă, evită cea mai mare parte din acestea.
Un prompt de start care funcționează
Construiește o aplicație web de scurtare a URL-urilor pentru echipa mea. Utilizatorii autentificați lipesc un URL de destinație și primesc un link scurt cu un cod aleator de 7 caractere (fără 0, O, 1 sau l), sau aleg un slug personalizat. Slug-urile sunt unice și insensibile la majuscule; rezervă login, api, admin, app și settings. Ruta publică /{code} caută codul cu o singură interogare indexată și returnează o redirecționare 302; înregistrează clicul (moment, referrer, țară, tip de dispozitiv — fără adresa IP completă) fără să întârzie redirecționarea. Codurile necunoscute sau dezactivate arată o pagină simplă de negăsit. Utilizatorii văd o listă cu linkurile lor și numărul de clicuri, pot edita destinația, dezactiva un link, descărca un cod QR și deschide o pagină de detalii cu clicuri pe zi, principalii referrer și țările. Validează că destinațiile sunt URL-uri http sau https și nu linkuri către acest scurtator. Stochează totul într-o bază de date.
Pași de construire
- Creare și redirecționare. Creează un link și deschide-l într-o fereastră privată. Verifică dacă răspunsul este un 302, nu o pagină care apoi redirecționează cu JavaScript.
- Coduri și slug-uri. Încearcă un slug duplicat, un cuvânt rezervat, majuscule amestecate și un URL foarte lung.
- Urmărirea clicurilor. Dă clic de pe câteva dispozitive și verifică numărătoarea și referrer-ii.
- Editare și dezactivare. Schimbă o destinație și confirmă că vechiul link scurt duce acum la noul loc; dezactivează unul și confirmă că se oprește.
- Validare. Încearcă linkuri
javascript:, linkuri către scurtatorul însuși și URL-uri malformate. Toate trebuie respinse pe server. - Domeniu. Conectează domeniul tău scurt și testează linkurile pe el.
- Controale anti-abuz, dacă instrumentul va fi public: limitări de frecvență, verificarea destinațiilor și o vizualizare de administrator a linkurilor recente.
Greșeli frecvente
- Redirecționări 301 cu urmărirea clicurilor. Browserele le țin în cache, iar cifrele tale ies greșit.
- Redirecționarea din pagină. Încarci aplicația, apoi redirecționezi cu JavaScript, și fiecare clic pare lent. Redirecționează de pe server.
- Lipsa unei constrângeri unice pe coduri. Coliziunile vor apărea în cele din urmă.
- Un scurtator public deschis, fără controale. Va fi abuzat, iar reputația domeniului tău merge odată cu el.
- Acceptarea oricărei scheme de URL. Permite doar destinații http și https.
- Pierderea linkurilor când muți. Deține tu domeniul scurt, ca linkurile să supraviețuiască unei schimbări de găzduire.
Când un produs gata făcut este alegerea mai bună
Serviciile consacrate de gestionare a linkurilor oferă domenii de brand, analize detaliate, funcții de echipă, coduri QR, integrări și gestionarea abuzurilor din start. Dacă linkurile sunt esențiale pentru marketingul tău și vrei zero întreținere, plătește pentru unul.
Construiește-ți propriul când vrei un scurtator simplu de echipă pe propriul domeniu, fără prețuri per loc, când linkurile sunt legate de propriul produs (linkuri de partajare, linkuri de recomandare, linkuri urmărite în emailuri) sau când vrei control deplin asupra datelor de clic. Este și un bun prim proiect de backend. Asociază-l cu o pagină link-in-bio și parcurge lista de verificare de securitate pentru aplicațiile construite cu AI înainte să-l deschizi altcuiva.
Construirea cu Mythex
În Mythex descrii scurtatorul în chat și testezi redirecționările în previzualizarea live. Mythex adaugă o bază de date dedicată pentru linkuri și clicuri când aplicația o cere. Aplicațiile publicate și bazele lor de date adorm când sunt inactive și se trezesc la următoarea vizită, ceea ce face ca un scurtator liniștit să ruleze ieftin. Publică pe un link mythex.ai, iar pe Pro poți conecta propriul domeniu scurt sau cumpăra unul din Mythex — vezi domenii personalizate. Șablonul de scurtator de URL-uri este un prompt de start gata scris, cu slug-uri personalizate și analize de clicuri.
Întrebări
Ar trebui un scurtator de URL-uri să folosească o redirecționare 301 sau 302?
O redirecționare 301 le spune browserelor că mutarea este permanentă, deci pot s-o păstreze în cache și pot ocoli serverul tău data viitoare, ceea ce înseamnă clicuri pierdute și linkuri pe care nu le mai poți schimba. Majoritatea scurtatoarelor care urmăresc clicurile sau permit editarea folosesc redirecționări temporare 302 sau 307.
Cum se generează codurile scurte?
Fie ca șiruri aleatorii de litere și cifre, verificate față de codurile existente, fie prin codificarea unui ID din baza de date în baza 62. Codurile aleatorii sunt mai greu de ghicit; cele secvențiale arată câte linkuri există. Șase sau șapte caractere aleatorii oferă miliarde de combinații.
Am nevoie de un domeniu scurt?
Nu ca să funcționeze, dar scopul unui scurtator este un link scurt și de încredere. Un domeniu scurt personalizat, pe care îl deții, înseamnă și că linkurile continuă să funcționeze dacă muți găzduirea.
Cum opresc oamenii să abuzeze de un scurtator de URL-uri public?
Cere înregistrarea pentru a crea linkuri, limitează frecvența creării lor, verifică destinațiile față de o listă de URL-uri periculoase, cum este Google Safe Browsing, blochează propriul domeniu ca destinație și pune-ți la dispoziție o modalitate rapidă de a dezactiva linkurile.