A Uniform Resource Locator (URL), colloquially termed a web address,Template:Sfnp is a reference to a web resource that specifies its location on a computer network and a mechanism for retrieving it. A URL is a specific type of Uniform Resource Identifier (URI),Template:Sfnp although many people use the two terms interchangeably.Template:Sfnp A URL implies the means to access an indicated resource and is denoted by a protocol or an access mechanism, which is not true of every URI.Template:SfnpTemplate:Sfnp Thus http://www.example.com
is a URL, while www.example.com
is not.[1] URLs occur most commonly to reference web pages (http), but are also used for file transfer (ftp), email (mailto), database access (JDBC), and many other applications.
Most web browsers display the URL of a web page above the page in an address bar. A typical URL could have the form http://www.example.com/index.html
, which indicates a protocol (http
), a hostname (www.example.com
), and a file name (index.html
).
History[]
Uniform Resource Locators were defined in Request for Comments (RFC) 1738 in 1994 by Tim Berners-Lee, the inventor of the World Wide Web, and the URI working group of the Internet Engineering Task Force (IETF),Template:Sfnp as an outcome of collaboration started at the IETF Living Documents "Birds of a Feather" session in 1992.Template:SfnpTemplate:Sfnp
The format combines the pre-existing system of domain names (created in 1985) with file path syntax, where slashes are used to separate directory and file names. Conventions already existed where server names could be prefixed to complete file paths, preceded by a double slash (//
).Template:Sfnp
Berners-Lee later expressed regret at the use of dots to separate the parts of the domain name within URIs, wishing he had used slashes throughout,Template:Sfnp and also said that, given the colon following the first component of a URI, the two slashes before the domain name were unnecessary.Template:Sfnp
Syntax[]
- Main article: Uniform resource identifier#Syntax
Every HTTP URL conforms to the syntax of a generic URI. Uniform resource identifier
A web browser will usually dereference a URL by performing an HTTP request to the specified host, by default on port number 80. URLs using the https
scheme require that requests and responses will be made over a secure connection to the website.
Internationalized URL[]
Internet users are distributed throughout the world using a wide variety of languages and alphabets and expect to be able to create URLs in their own local alphabets. An Internationalized Resource Identifier (IRI) is a form of URL that includes Unicode characters. All modern browsers support IRIs. The parts of the URL requiring special treatment for different alphabets are the domain name and path.Template:SfnpTemplate:Sfnp
The domain name in the IRI is known as an Internationalized Domain Name (IDN). Web and Internet software automatically convert the domain name into punycode usable by the Domain Name System; for example, the Chinese URL http://例子.卷筒纸
becomes http://xn--fsqu00a.xn--3lr804guic/
. The xn--
indicates that the character was not originally ASCII.Template:Sfnp
The URL path name can also be specified by the user in the local alphabet. If not already encoded, it is converted to Unicode, and any characters not part of the basic URL character set are converted to English letters using percent-encoding; for example, the Japanese URL http://example.com/引き割り.html
becomes http://example.com/%E5%BC%95%E3%81%8D%E5%89%B2%E3%82%8A.html
. The target computer decodes the address and displays the page.Template:Sfnp
Protocol-relative URLs Template:Anchor[]
Protocol-relative links (PRL), also known as protocol-relative URLs (PRURL), are URLs that have no protocol specified. For example, //example.com
will use the protocol of the current page, either HTTP or HTTPS.[2][3]
See also[]
Template:Div col
- CURIE (Compact URI)
- Use of slashes in networking
- Fragment identifier
- Internationalized resource identifier (IRI)
- Semantic URL
- Typosquatting
- URL normalization
Template:Div col end
Notes[]
Template:Notelist
Citations[]
References[]
Template:Refbegin
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
- Template:Cite web
Template:Refend
External links[]
- URL specification at WHATWG
Template:Hypermedia
Template:Use dmy dates