Sebuah Uniform Resource Locator (URL), yang dikenal secara umum sebagai alamat di Web, adalah sebuah rujukan terhadap suatu sumber daya yang menentukan lokasinya dalam jaringan komputer dan mekanisme untuk mengambilnya. Sebuah URL merupakan tipe tertentu dari Uniform Resource Identifier (URI), meskipun banyak orang menggunakan kedua istilah tersebut secara bergantian. URL umumnya digunakan untuk merujuk halaman web (HTTP/HTTPS) tetapi juga digunakan untuk transfer file (FTP), surel (mailto), akses basis data (JDBC), dan banyak aplikasi lainnya.
Sebagian besar peramban web menampilkan URL dari sebuah halaman web di atas halaman tersebut dalam bilah alamat. Sebuah URL biasanya memiliki bentuk http://www.contoh.com/index.html, yang menunjukkan protokol (http), nama host (www.contoh.com), dan nama file (index.html).
Uniform Resource Locators (URL) didefinisikan dalam RFC 1738 pada tahun 1994 oleh Tim Berners-Lee, pencipta World Wide Web, dan kelompok kerja URI dari Internet Engineering Task Force (IETF), sebagai hasil dari kolaborasi yang dimulai pada sesi IETF Living Documents birds of a feather pada tahun 1992. Format ini menggabungkan sistem nama domain yang sudah ada (dibuat pada tahun 1985) dengan sintaks jalur file, di mana garis miring digunakan untuk memisahkan direktori dan nama file. Konvensi yang sudah ada di mana nama server dapat diawali untuk melengkapi jalur file, diawali oleh double slash. Berners-Lee kemudian menyatakan penyesalannya atas penggunaan titik untuk memisahkan bagian-bagian dari nama domain dalam URI, berharap dia menggunakan garis miring di seluruhnya, dan juga mengatakan bahwa, mengingat titik dua setelah komponen pertama dari URI, dua garis miring sebelum nama domain tidak diperlukan. Kolaborator WorldWideWeb awal termasuk Berners-Lee awalnya mengusulkan penggunaan UDIs: Universal Document Identifiers. Sebuah draf awal (1993) dari Spesifikasi HTML merujuk pada "Universal" Resource Locators. Hal ini dihapus antara bulan Juni 1994 (RFC 1630) dan Oktober 1994. Dalam bukunya Weaving the Web, Berners-Lee menekankan preferensinya terhadap penggunaan "universal" dalam ekspansi daripada kata "uniform", yang kemudian diubah, dan dia memberikan gambaran singkat tentang kontroversi yang menyebabkan perubahan tersebut.
Setiap URL HTTP sesuai dengan sintaksis URI generik. Sintaksis URI generik terdiri dari lima komponen yang disusun secara hirarkis dari kiri ke kanan berdasarkan signifikansi yang berkurang dari kiri ke kanan:
URI = skema ":" ["//" otoritas] jalur ["?" kueri] ["#" fragmen]
Sebuah komponen tidak terdefinisi jika memiliki pemisah terkait dan pemisah tersebut tidak muncul dalam URI; komponen skema dan jalur selalu didefinisikan. Sebuah komponen kosong jika tidak memiliki karakter; komponen skema selalu tidak kosong. Komponen otoritas terdiri dari subkomponen:
otoritas = [userinfo "@"] host [":" port]
URI terdiri dari:
Komponen skema yang tidak kosong diikuti oleh titik dua (:), terdiri dari urutan karakter yang dimulai dengan huruf dan diikuti oleh kombinasi huruf, digit, tanda tambah (+), titik (.), atau tanda hubung (-). Meskipun skema bersifat case-insensitive, bentuk kanonikalnya adalah huruf kecil dan dokumen yang menentukan skema harus melakukannya dengan huruf kecil. Contoh skema populer meliputi http, https, ftp, mailto, file, data, dan irc. Skema URI harus didaftarkan dengan Otoritas Nomor Terdaftar Internet (IANA), meskipun skema yang tidak terdaftar digunakan dalam praktik.
Komponen otoritas opsional yang didahului oleh dua garis miring (//), terdiri dari:
Subkomponen userinfo opsional diikuti oleh simbol at (@), yang dapat terdiri dari nama pengguna dan kata sandi opsional yang didahului oleh titik dua (:). Penggunaan format nama pengguna:kata sandi dalam subkomponen userinfo dinyatakan usang karena alasan keamanan. Aplikasi tidak boleh menampilkan sebagai teks biasa data setelah titik dua (:) yang ditemukan dalam subkomponen userinfo kecuali data setelah titik dua adalah string kosong (menunjukkan tidak ada kata sandi).
Subkomponen host, terdiri dari nama terdaftar (termasuk namahost) atau alamat IP. Alamat IPv4 harus dalam notasi titik-desimal, dan alamat IPv6 harus diapit dalam tanda kurung [].
Subkomponen port opsional yang didahului oleh titik dua (:), terdiri dari digit desimal.
Komponen jalur, terdiri dari urutan segmen jalur yang dipisahkan oleh garis miring (/). Jalur selalu didefinisikan untuk URI, meskipun jalur yang didefinisikan dapat kosong (nol panjang). Sebuah segmen juga dapat kosong, menghasilkan dua garis miring berturut-turut (//) dalam komponen jalur. Komponen jalur dapat mirip atau sesuai dengan jalur sistem file tetapi tidak selalu menunjukkan hubungan dengan salah satu. Jika komponen otoritas didefinisikan, maka komponen jalur harus entah kosong atau dimulai dengan garis miring (/). Jika komponen otoritas tidak didefinisikan, maka jalur tidak boleh dimulai dengan segmen kosong yaitu, dengan dua garis miring (//) karena karakter-karakter berikutnya akan diinterpretasikan sebagai komponen otoritas.
Secara konvensional, dalam URI http dan https, bagian terakhir dari jalur dinamai pathinfo dan bersifat opsional. Ini terdiri dari nol atau lebih segmen jalur yang tidak merujuk pada nama sumber daya fisik yang ada (mis. file, program modul internal, atau program eksekutif) tetapi pada bagian logis (mis. bagian perintah atau kualifikasi) yang harus dilewatkan secara terpisah ke bagian pertama jalur yang mengidentifikasi modul eksekutif atau program yang dikelola oleh server web; ini sering digunakan untuk memilih konten dinamis (dokumen, dll.) atau untuk menyesuaikannya sesuai permintaan. Sebuah URI http atau https yang mengandung bagian pathinfo tanpa bagian kueri juga dapat disebut sebagai 'URL bersih,' di mana bagian terakhirnya mungkin merupakan 'slug.'
Pautan tanpa protokol (PRL), juga dikenal sebagai URL tanpa protokol (PRURL), adalah URL yang tidak memiliki protokol yang ditentukan. Sebagai contoh, //example.com akan menggunakan protokol dari halaman saat ini, biasanya HTTP atau HTTPS
Pengguna internet tersebar di seluruh dunia menggunakan berbagai bahasa dan aksara, dan mengharapkan dapat membuat URL dalam aksara lokal mereka sendiri. Sebuah Identifier Sumber Daya Internasional (IRI) adalah bentuk URL yang mencakup karakter Unicode. Semua peramban web modern mendukung IRI. Bagian-bagian URL yang memerlukan perlakuan khusus untuk aksara yang berbeda adalah nama domain dan jalur. Nama domain dalam IRI dikenal sebagai Nama Domain Internasional (IDN). Perangkat lunak web dan internet secara otomatis mengonversi nama domain menjadi punycode yang dapat digunakan oleh Sistem Nama Domain; sebagai contoh, URL Cina http://例子.卷筒纸 menjadi http://xn--fsqu00a.xn--3lr804guic/. xn-- menunjukkan bahwa karakter tersebut tidak awalnya ASCII. Jalur nama URL juga dapat ditentukan oleh pengguna dalam sistem penulisan lokal. Jika belum diencode, itu dikonversi menjadi UTF-8, dan karakter-karakter yang tidak termasuk dalam set karakter URL dasar melarikan diri sebagai heksadesimal menggunakan persen-encoding; sebagai contoh, URL Jepang http://example.com/引き割り.html menjadi http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html. Komputer target mendekode alamat dan menampilkan halaman.
Posting Komentar