A URL (Uniform Resource Locator) is a form of URI and is a standardized naming convention for addressing documents accessible over the Internet and Intranet. An example of a URL is http://www.computerhope.com, which is the URL for the Computer Hope website.
Overview of a URL
Below is additional information about each of the sections of the http URL for this page.
The "http" stands for HyperText Transfer Protocol and is what enables the browser to know what protocol it is going to use to access the information specified in the domain. After the http is the colon ( : ) and two forward slashes ( // ) that separate the protocol from the remainder of the URL.
Next, www. stands for World Wide Web and is used to distinguish the content. This portion of the URL is not required and many times can be left out. For example, typing "http://computerhope.com" would still get you to the Computer Hope web page. This portion of the address can also be substituted for an important sub page known as a subdomain. For example, http://support.computerhope.com forwards you to the main help section of Computer Hope.
Next, computerhope.com is the domain name for the website. The last portion of the domain is known as the "domain suffix", or TLD, and is used to identify the type or location of the website. For example, .com is short for commercial, .org is short for an organization, and .co.uk is the United Kingdom. There are dozens of other domain suffixes available. To get a domain, you would register the name through a domain registrar.
Next, the "jargon" and "u" portions of the above URL are the directories of where on the server the web page is located. In this example, the web page is two directories deep, so if you were trying to find the file on the server, it would be in the /public_html/jargon/u directory. With most servers, the public_html directory is the default directory containing the HTML files.
Finally, url.htm is the actual web page on the domain you're viewing. The trailing .htm is the file extension of the web page that indicates the file is an HTML file. Other common file extensions on the Internet include .html, .php, .asp, .cgi, .xml, .jpg, and .gif. Each of these file extensions performs a different function, just like all the different types of files on your computer.
- See our index.htm definition for additional information about this important file.
Tip: As you may have noticed the protocol, domain, directories, and files are all separated by forward slashes ( / ).
What characters are not allowed in a URL?
Most people realize that a space is not allowed in a URL. However, it is also important to realize, as documented in RFC 1738, the URL string can only contain alphanumeric characters and the !$-_+*'(), characters. Any other characters that are needed in the URL must be encoded.
Understanding more complex URLs and parameters
When a URL points to a script that performs additional functions, such as a search engine pointing to a search results page, additional information (parameters) is added to the end of the URL. Below is additional information about a URL that points to the Computer Hope Search page, with the search query of "example search".
In this URL, the script file being pointed to is search.cgi in the cgi-bin directory. Because this file ends with .cgi, it is assumed to be a Perl script.
After the script file name is a ? (question mark). The question mark in a URL separates the URL from all the parameters or variables that are being sent to the script. In the above example, the parameter being sent is q=example%20search. The "q" is a variable name, and the "example%20search" is the value being sent to that variable. Because no spaces are allowed in a URL, the space has been encoded as %20. In many scripts, a + (plus) is also used to represent a space.
In our example, because there is a variable the script would use it as it is executed. Scripts are also not limited to only one variable. If the script needs multiple variables, each variable can be separated with an & (ampersand) as shown in the example below.
In the above example, there are two different variables. The "q" variable equals "example search" and the "example" variable equals "test". If the script was looking for an example variable, it could be processed and perform an additional feature.