From Wikipedia, the free encyclopedia
Web-adresa (engl. ; skraćeno URL, od uniformni resursni lokator, engl. ) je specijalni niz znakova koji se sastoji od izvora prema resursu. Većina internetskih preglednika prikazuje web-adresu web-stranice iznad stranice u adresnoj traci. Tipični URL može ovako izgledati:
RFC 3986 (2005) klasificira URL-ove kao specijalni tip uniformnog resursnog identifikatora (URI),[1] iako većina ljudi koristi oba termina naizmjenično.[2] URL implicira načine pristupa traženom resursu, koji nije istinit za svaki URI.[2][3] URL-ovise pojavljuju veoma često da opišu web stranice (http), ali imaju također ulogu u transferu datoteka (ftp), slanju emailova (mailto), pristup bazama podataka (JDBC), i mnoge druge aplikacije.
URL-ovi su specificirani u 3986 (2005), te u WHATWG URL Living Standardu.[4]
Uniformni resursni lokator je standardiziran 1994. godine[5] od strane Tim Berners-Lee-ja i URI radne grupe na IETF-u kao rezultat kolaboracije počete na IETF Living Documents "Birds of a Feather" sesiji 1992. godine.[6][7] Format kombinira predpostojeći sistem naziva domena (kreiran 1985.) sa sintaksom puta datoteke, gdje su kose linije korištene da odvoje direktorije od imena datoteka. Dogovori su svakako postojali gdje se ispred imena servera mogao dodati neki znak da dopuni lokaciju resursa, obično dvije kose crte (//).[8]
Berners-Lee je kasnije zažalio zbog korištenja tačaka da odvoji dijelove imena domene unutar URI-ja, želeći ipak koristiti kose linije.[8] Naprimjer, http://www.example.com/path/to/name bi bio napisan kao http:com/example/www/path/to/name. Berners-Lee je također rekao, prateći šemu URI-ja, dvije kose crte prije imena domene su također bespotrebne.[9]
Svaka HTTP web-adresa sastoji se iz sljedećeg, u datom redoslijedu. Neke šeme za razliku od HTTP također dijele ovaj generalni format, sa nekim varijacijama.
Šema govori kako se spojiti, host govori gdje se spojiti, a ostatak govori šta da se traži.
Za programe kao što su Common Gateway Interface (CGI) skripte, ovo je praćeno od upita niza,[10][11] i identifikator opcionalnog fragmenta.[12]
Sintaksa je:
scheme://domain:port/path?query_string#fragment_id
Detalji komponente:
Ime šeme definira prostor za ime, svrhu i sintaksu ostatka dijela URL-a. Softver će pokušati procesirati URL prema njegovoj šemi i konstekstu. Naprimjer, internetski preglednik će često dereferencirati URL http://example.org:80 obavljanjem HTTP zahtjeva prema hostu na example.org, koristeći broj porta 80.
Ostali primjeri imena šema uključuju https, gopher, wais, ftp. URL-ovi sa https kao šemom (kao https://example.com/) zahtjevaju da zahtjevi i odgovori budu napravljeni preko sigurne konekcije sa web-sajtom. Neke šeme koje zahtjevaju ovjeru dopuštaju korisničko ime (username), i možda šifru također, da budu ugrađeni u URL, naprimjer ftp://asmith@ftp.example.org. Šifre ugrađene ovim načinom nisu pogodne za sigurnost, ali potpuna moguća sintaksa je:
scheme://username:password@domain:port/path?query_string#fragment_id
Ostale šeme ne prate HTTP uzorak. Naprimjer, mailto šema samo koristi validne email adrese. Kada je kliknuta unutar aplikacije, URL mailto:bob@example.com može startati e-mail program sa adresom bob@example.com u 'Prema' polju. Šema tel je čak više različita; koristi javne telefonske mreže za adresiranje, umjesto imena domena koje reprezentiraju Internet hostove.
Mogu biti kodirani, ali to nije potrebno:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 - _ . ~
Moraju ponekad biti kodirani:
! * ' ( ) ; : @ & = + $ , / ? % # [ ]
Dalji detalji mogu biti npr. nađeni u RFC 3986 and http://www.w3.org/Addressing/URL/uri-spec.html.
URL je URI koji, u dodatku sa identificiranjem web-resursa, omogućava načine lociranja resursa opisivanjem svog primarnog pristupnog mehanizma (npr. svoje mrežne lokacije).[14]
Na Internetu, ime hosta je ime domene povezan sa host računarom. Ovo je često kombinacija host lokalnog imena sa svojim parent imenom domene. Naprimjer, en.example.org se sastoji od lokalnog imena hosta (en) i imena domene example.org. Ime hosta je prevedeno u IP adresu preko datoteke lokalnog hosta ili domain name system (DNS) rezolvera. Moguće je za jedan host računar da ima više imena hosta; ali generalno operativni sistem hosta preferira imati jedno ime koje host koristi za sebe.
Svako ime domene može također biti ime hosta, dok su god ograničenja spomenuta ispod ispoštovana. Naprimjer, i "en.example.org" i "example.org" mogu biti imena hosta ako oba imaju IP adrese povezane sa njima. Ime domene "xyz.example.org" može i da nema ime hosta ako nema IP adresu, ali "aa.xyz.example.org" može i dalje biti ime hosta. Sva imena hosta su imena domene, ali sva imena domene nisu imena hosta.
Protokol, ili šema, URL-a definira kako će resurs biti dobavljen. Najčešći protokoli na webu su HTTP i HTTPS. Zbog različitih razloga, većina sajtova se prebacuje dozvoljavanjem pristupa preko HTTP i HTTPS protokola.[15][16] Svaki protokol ima prednosti i mahane, uključujući da za neke korisnike jedan ili drugi protokol bilo ne radi, ili nije baš poželjan. Kada link sadrži specifikator protokola to rezultira u pregledniku praćenje linka koristeći specifični protokol nezavisno od potencijalnih želja korisnika. Moguće je konstruirati validne URL-ove bez specificiranja protokola koji se nazivaju protokolno-relativni linkovi (PRL) ili protokolno-relativne URL adrese. Korištenjem PRL-ova na stranici dozvoljava prikazivaču stranice da posjećuje nove stranice koristeći bilo koji protokol koji je korišten za dobavljanje koja sadrži link. Ovo podržava nastavak korištenja bilo kojeg protokola koji je prikazivač izabrao da koristi za dobavljanje trenutne strance kada pristupa novim stranicama.[17]
Primjer PRL-a je //en.wikipedia.org/wiki/Main_Page koji je kreiran uklanjanjem prefiksa protokola.
Veliki kompjuterski proizvođači kao Apple su počeli osuđivati API-je koji uzimaju lokalne pathove kao parametre, umjesto korištenja web-adresa.[18] Ovo je zbog toga što udaljeni i lokalni resursi (preko datotečne šeme) mogu oboje biti reprezentirani korištenjem URL-a, ali mogu dodatno omogućiti protokol (djelomično koristan za udaljene predmete) i svjedodžbe.