Save 15% on All Hosting Services

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul: Skills Începeți
Secțiuni
Administrație Sisteme de operare

URI vs URL vs URN Explicat: Diferențele Care Contează cu Adevărat

De ce URI, URL și URN par interschimbabile

why

Probabil că ați văzut această schimbare de etichete în timp real. Browserul tău vorbește despre un URL. Un document API vorbește despre un URI. Apoi un exemplu de standarde introduce un URN și face să sune ca și cum web-ul ar fi inventat un al treilea nume pentru același lucru.

Acea confuzie este normală. Termenii chiar apar în diferite părți ale stack-ului web, iar internetul nu este întotdeauna suficient de amabil pentru a se opri și a explica de ce. Aceasta nu este o eșec al cititorului și nu este trivialitate pentru avocații standardelor. Modul util de a o aborda este practic mai întâi: URI este umbrela, URL este adresa, iar URN este numele stabil. Odată ce acel model se cristalizează, documentele browserului, specificațiile HTTP, referințele API și materialul de găzduire încetează să sune ca și cum s-ar contrazice reciproc.

Referință rapidă: Doar termenii de care ai nevoie mai întâi

reference

Ai nevoie doar de o mică cantitate de vocabular partajat înainte ca explicația principală să înceapă, iar acest glosar este intenționat practic mai degrabă decât exhaustiv.

TermenSemnificație în limbaj simplu
resource 📦Lucrul către care se indică: o pagină, fișier, cutie poștală, țintă API, document sau element numit.
identifier 🆔O etichetă sau șir folosit pentru a se referi la acel lucru.
scheme 🗺️Partea de deschidere care sugerează tipul de identificator, cum ar fi https, mailto sau urn.
host/domain 🌐Numele rețelei orientat către utilizator, cum ar fi example.com, care ajută la localizarea unui serviciu.
path 🛣️Partea care indică mai adânc într-un site sau serviciu, cum ar fi /docs/install.
query ❓Informații suplimentare adăugate după ?, adesea folosite pentru filtre, ID-uri sau opțiuni.
fragment 🧩Partea după # care indică o secțiune din resource pe partea clientului.
namespace 🗂️Un spațiu de denumire gestionat care păstrează identificatorii semnificativi într-un sistem specific.

URI vs URL vs URN într-un minut

oneminute

Dacă vrei doar versiunea scurtă, aceasta este: dacă identifică ceva, este un URI. Dacă îți spune unde sau cum să-l atingi, acționează ca un URL. Dacă este destinat să numească ceva stabil, acționează ca un URN. Majoritatea navigării zilnice, site-urilor și conversațiilor de găzduire trăiesc în teritoriul URL deoarece sunt despre adrese pe care oamenii și software-ul le pot folosi de fapt.

TermenSemnificație simplăExempluCând contează
URICategoria largă pentru identificatorimailto:hello@example.comCând documentele sau specificațiile vorbesc generic
URLUn identificator care funcționează ca o adresă sau cale de acceshttps://example.com/docsCând înțelegi o adresă web normală
URNUn identificator destinat să rămână stabil chiar dacă locația se schimbăurn:isbn:9780141036144Când un sistem de denumire se preocupă de persistență

Iată trei exemple curate una lângă alta înainte de a le desface:

https://example.com/docs
mailto:hello@example.com
urn:isbn:9780141036144

Primul este cazul zilnic pe care majoritatea cititorilor îl cunosc deja. Al doilea este încă un identificator, dar nu o pagină web. Al treilea este un nume stabil într-un spațiu de denumire gestionat. Aceasta este întreaga hartă în miniatură.

Ce este de fapt un URI

uri

Ideea care poartă sarcina provine din RFC 3986, dar versiunea în limba engleză simplă este ușoară: un URI identifică o resursă. Cuvântul resource sună abstract până când îl traduci înapoi în exemple umane. În acest articol, poate însemna o pagină web, un endpoint API, un fișier, o cutie poștală, un document sau chiar un lucru numit într-un registru.

Distincția importantă este identificare versus acces. Un URI poate să-ți spună ce este ceva fără a promite că îl poți deschide, prelua sau chiar interacționa cu el într-un browser. De aceea „URI” este mai larg decât „adresă web”. Este vorba despre denumire sau identificare mai întâi.

Imaginează-ți relația așa:

URI
├── URL  → identifies by location or access path
└── URN  → identifies by stable name inside a namespace

Acea analogie cu umbrela este cea pe care trebuie să o ții. URL și URN nu sunt termeni rivali stând lângă URI. Stau în interiorul lui.

Iată o reamintire rapidă a gamei pe care o poate acoperi un URI:

https://example.com/docs        → a webpage
mailto:hello@example.com        → a mailbox target
urn:ietf:rfc:3986               → a named standards document

📝 Notă: Nu orice URI este ceva pe care îl poți deschide într-un browser.

Unii URI sunt prietenoși cu browserul, iar alții nu. Aceasta este corecția de care au nevoie cei mai mulți cititori, deoarece rupe obiceiul de a trata URI ca nimic mai mult decât un sinonim formal pentru URL.

Ce face un URL să fie URL

url

Cea mai ușoară semnificație în limbaj simplu a URL este încă adresă web. Aceasta este cum întâlnesc cei mai mulți oamenii termenul, și nu este greșit. O versiune ușor mai precisă este că un URL este tipul de URI care îți dă suficiente informații de locație sau acces pentru a ajunge la o resursă, motiv pentru care domină utilizarea web normală.

Ia o adresă de găzduire familiară ca aceasta. Arată piesele pe care cititorii le văd deja în fiecare zi, chiar dacă nu le numesc formal:

https://shop.alexhost.com/products?id=42#reviews
│       │                 │           │  │
│       │                 │           │  └─ fragment
│       │                 │           └──── query
│       │                 └──────────────── path
│       └────────────────────────────────── host/domain
└────────────────────────────────────────── scheme

scheme spune software-ului ce fel de model de acces se ocupă. host sau domeniu îi spune ce serviciu să contacteze. path indică o locație în interiorul acelui serviciu. query adaugă instrucțiuni sau filtre suplimentare. fragment este diferit de restul: de obicei ajută clientul să sară la o secțiune cum ar fi #reviews, și nu este trimis serverului ca parte a cererii.

Aceasta este și locul unde cititorii pot auzi despre referințe absolute și relative. Un URL absolut include adresa completă, cum ar fi https://example.com/docs/install. O referință relativă taie asta la ceva cum ar fi /docs/install, care are sens doar în contextul unei adrese de bază curente. Nu ai nevoie de un tutorial complet de rutare aici; trebuie doar să recunoști de ce ambele forme apar în documentația dezvoltatorului.

În munca web găzduită reală, aceasta este de obicei stratul pe care oamenii se preocupă cel mai mult. URL-urile curate ajută utilizatorii să aibă încredere în ceea ce fac clic, ajută echipele să mențină documentația lizibilă și ajută întreprinderile să mențină căile aplicației sau marketingului consistente în timp. Dacă implementezi un site, portal de documentație sau vitrină, structura URL lizibilă contează mult mai mult decât teoria URN.

Ce face un URN diferit

urn

Un URN este un URI sub schema urn:, iar jobul lui este diferit de o adresă normală. În loc să-ți spună unde trăiește ceva, este destinat să o numească persistent, chiar dacă locația de stocare sau metoda de recuperare se schimbă mai târziu. De aceea cea mai bună analogie aici este un registru sau un nume de catalog, nu o adresă de stradă.

Modelul de bază arată așa:

urn:<NID>:<NSS>

urn:isbn:9780141036144
urn:ietf:rfc:3986

NID înseamnă namespace identifier: îți spune în ce sistem de denumire ești, cum ar fi isbn sau ietf. NSS înseamnă namespace-specific string: este numele real din interiorul acelui sistem. Vei vedea, de asemenea, denumirea persistentă în stil DOI discutată în aceeași familie largă de probleme, deoarece sistemele de publicare și catalogare se preocupă profund de identitate stabilă în timp.

Motivul pentru care cei mai mulți oameni rareori tastează URN-uri într-un browser este simplu: navigarea este de obicei despre acces, nu despre denumirea registrului. URN-urile sunt importante, totuși. Apar în standarde, catalogare, publicare, sisteme de identitate și alte locuri în care un nume trebuie să rămână semnificativ chiar dacă lucrul se mută. Registrul spațiului de nume URN IANA este încă activ menținut, ceea ce este un semn bun că URN-urile sunt infrastructură reală, nu jargon mort.

⚠️ Avertisment: Nu predă prea mult URN-uri ca instrumente de navigare comune. Sunt importante, dar nu sunt centrul navigării web obișnuite în modul în care sunt URL-urile.

Relația pe care oamenii o înțeleg de obicei greșit

relationship

Iată declarația de ierarhie curată: toate URL-urile sunt URI-uri, iar URN-urile sunt URI-uri, dar nu orice URI este un URL. Acea o propoziție rezolvă cea mai mare parte a confuziei. Problema începe când oamenii încearcă să forțeze orice identificator într-o cutie rigidă fie-URL-fie-URN și presupun că toate sursele trebuie să folosească aceeași divizare.

📝 Notă: Explicațiile mai vechi adesea desenează URL și URN ca subtipuri curate sub URI, în timp ce sursele mai noi orientate spre web folosesc URL mai informal și URI mai generic. De aceea două surse de încredere pot suna diferit fără a fi de fapt în război.

Materialul de clarificare W3C este util aici deoarece separă viziunea clasică de cea contemporană. Explicația clasică tratează URI ca clasa largă și prezintă URL și URN ca moduri diferite în care un identificator poate să se comporte. Obiceiul contemporan, în special în materialul orientat spre browser, este mai liber: URL rămâne comun în vorbirea web practică, în timp ce URI rămâne termenul generic mai sigur în specificații.

De aceea și cazurile de margine controlate cum ar fi mailto: creează dezbateri. Este cu siguranță un URI. Unii oameni sunt confortabili numind-o URL deoarece folosește o schemă și dă software-ului o modalitate de a acționa asupra țintei. Alții evită asta și păstrează URL pentru cazuri mai evident asemănătoare locației. Cea mai sigură concluzie pentru începători este să nu câștigi argumentul. Este să înțelegi de ce argumentul există.

ExempluCitire sigurăDe ce
https://example.com/docsURI și URLIdentifică o resursă și funcționează ca o adresă recuperabilă.
urn:isbn:9780141036144URI și URNIdentifică după nume persistent în interiorul unui spațiu de denumire gestionat.
mailto:hello@example.comCu siguranță un URI; dezbateri de clasificare se întâmplă în jurul „URL”Identifică o țintă și folosește o schemă, dar nu este modelul normal de pagină browser pe care oamenii îl imaginează mai întâi.

Odată ce vezi tabelul în acest fel, nodul mental se slăbește. URI este termenul de citire larg. URL este termenul de adresă zilnic. URN este termenul de denumire persistent. Dezacordul din surse este de obicei despre accent, nu despre întregul model fiind rupt.

De ce diferența contează în munca reală

diffmatter

Valoarea practică a acestei distincții nu este că te lasă să suni mai precis la petreceri. Contează deoarece diferite materiale tehnice vorbesc despre diferite straturi de identitate și acces. Odată ce știi ce strat se preocupă un document, alegerea cuvintelor încetează să se simtă arbitrară.

Documentele browserului și platformei

Materialul modern de browser și platformă web adesea standardizează pe URL deoarece acel lume este în mare parte despre analizare, navigare, manipularea originii și comportament asemănător adresei în browser. Aceasta este mediul în care oamenii deschid pagini, încarcă scripturi, rezolvă linkuri relative și se mișcă prin locații orientate spre web.

📝 Notă: Standardele moderne de browser și platformă de obicei preferă termenul URL, chiar și atunci când limbajul de standarde mai vechi în altă parte folosește URI mai larg.

HTTP, API și limbaj de specificații

Documentele HTTP și protocol adesea preferă URI deoarece vorbesc despre resursa țintă mai generic. Nu descriu întotdeauna șirul complet de adresă în stil browser. Uneori descriu o țintă de cerere, o referință relativă sau un concept de identitate a resursei mai larg.

Iată exemplul de cerere care face asta mai ușor de văzut:

GET /docs/install?lang=en HTTP/1.1
Host: example.com

Acea cerere nu repetă forma completă https://example.com/docs/install?lang=en, dar protocolul vizează în mod clar o resursă. Aceasta este o rație pentru care semantica HTTP și materialul API adesea vorbesc despre URI-uri de resurse. Limbajul trebuie spațiu pentru mai mult decât „adresa completă pe care ai tastat-o într-un browser”.

Munca web de găzduire și orientată spre afaceri

În găzduire, marketing, implementare de aplicații și conversații web orientate spre afaceri, preocuparea este de obicei mult mai îngustă și mai practică: URL-uri curate, căi stabile, redirecționări sensibile, domenii lizibile și structură previzibilă. Dacă implementezi o aplicație sau un site de documentație pe un VPS AlexHost sau orice platformă de găzduire similară, întrebarea operațională zilnică este de obicei dacă designul URL este clar și stabil — nu dacă un URN ar descrie resursa mai filozofic.

Aceasta este teza reală a articolului care se întoarce. Diferența contează cel mai mult ca instrument de citire. Te ajută să înțelegi de ce documentele browserului spun un lucru, specificațiile API spun altul, iar ghidurile de găzduire rămân în mare parte concentrate pe URL-uri. Nu ai nevoie de terminologie perfectă în fiecare propoziție. Ai nevoie de modelul mental corect când contextul se schimbă.

Când să spui URL, URI sau URN

choice

În acest punct, rezultatul cel mai util este o regulă scurtă pe care o poți de fapt reutiliza. Gândește-te la asta ca la o foaie de cheat, nu la un examen de standarde.

Dacă înțelegi…Spune…
O adresă web normală, locație de pagină sau cale găzduităURL
Un identificator de resursă în general, în special în documente sau API-uriURI
Un nume persistent în interiorul unui sistem real de denumire urn:URN

💡 Sfat: Folosește URL în conversații zilnice web și de găzduire. Folosește URI când tipul este generic, mixt sau definit de specificații.

Acel scurtătură te duce la cuvântul corect majoritatea timpului. Și dacă dai cuvântul implicit URL în timp ce vorbești despre browsere, site-uri web, aplicații găzduite sau conținut web orientat spre afaceri, de obicei ești bine. Păstrează URI pentru cazurile mai largi sau mai formale, și păstrează URN pentru cazurile în care un sistem real de denumire persistentă este de fapt implicat.

Concepții greșite comune și întrebări frecvente rapide

myths

Cea mai mare parte a confuziei rămase provine din aceleași câteva întrebări repetate în forme diferite. Odată ce acestea sunt clare, subiectul de obicei rămâne clar.

  • Este orice URL un URI? Da. În modelul modern larg, un URL se află în categoria URI mai largă. Inversul nu este adevărat, deoarece unii URI nu sunt locatori normali asemănători adresei.
  • Este mailto: un URL sau doar un URI? Răspunsul scurt cel mai sigur este că este cu siguranță un URI. Dacă îl numești și URL depinde de cât de strict folosești termenii, ceea ce este exact de ce este mai bine ca caz de margine decât ca exemplu de predare inițial.
  • Merge #fragment la server? De obicei nu. Fragment-ul este gestionat în principal pe partea clientului, motiv pentru care este frecvent folosit pentru a sări la o secțiune din interiorul unei pagini după ce resursa principală este deja încărcată.
  • Sunt referințele relative parte din această conversație? Da, deoarece dezvoltatorii lucrează constant cu lucruri cum ar fi /docs/install chiar și atunci când adresa completă nu este scrisă. Contează cel mai mult în discuții despre URL și URI în jurul browserelor, HTML, rutare și ținte de cerere HTTP.
  • De ce documentele moderne încă amest
Administrație Servere virtuale
Administrație
Administrație Servere virtuale

Save 15% on All Hosting Services

Testează-ți abilitățile și obține Reducere la orice plan de găzduire

Utilizați codul: Skills Începeți
Acces rapid la informații
Acces rapid la informații

Economisiți timp și obțineți un răspuns rapid la întrebarea dvs

Rezolvați singur problemele
Rezolvați singur problemele

Baza de cunoștințe conține tutoriale detaliate, care vă permit să vă ocupați singur de sarcinile tehnice.

Îmbunătățirea competențelor
Îmbunătățirea competențelor

Prin utilizarea bazei de cunoștințe, vă extindeți cunoștințele despre găzduirea web și subiecte conexe

Ilustrații și diagrame
Ilustrații și diagrame

Multe articole sunt însoțite de ilustrații și diagrame, facilitând înțelegerea proceselor și setărilor complexe.

Trucuri utile
Trucuri utile

Veți găsi sfaturi utile pentru a îmbunătăți performanța site-ului sau aplicației dvs.

Relevanța subiectelor date
Relevanța subiectelor date

Informațiile din baza de cunoștințe sunt actualizate periodic pentru a reflecta cele mai recente schimbări și tendințe în domeniul infrastructurii IT și al serviciilor AlexHost

Nu ați găsit subiectul pe care îl căutați? Există o soluție perfectă

Oaspeți și clienți de excepție! Confortul dumneavoastră este prioritatea noastră! Dacă întâmpinați dificultăți în instalarea unui anumit software sau în implementarea unui server, vă rugăm să nu ezitați să ne contactați. Apreciem opinia dvs. și suntem întotdeauna gata să vă ajutăm să vă rezolvați problemele.

În plus, vă oferim posibilitatea de a participa activ la crearea bazei noastre de cunoștințe. Dacă aveți subiecte sau întrebări pe care ați dori să le includeți în baza noastră de date, anunțați-ne! Suntem pregătiți să scriem articole și ghiduri detaliate pe baza nevoilor dvs.

Ne străduim să vă facem experiența cu AlexHost cât mai convenabilă și eficientă posibil, iar contribuția dvs. la baza de cunoștințe ne ajută să atingem acest obiectiv. Contactați-ne ->
info@alexhost.com și spuneți-ne cum putem face șederea dvs. la noi și mai bună.

Solution Image