The Uniform Resource Locator (URL) is the conventional description of the location of a document on the web. It has three parts:
- The protocol to use specified before the // (HTTP: for HTTP, HTTPS for encrypted HTTP, for Web documents, but browsers are sometimes able to understand Internet protocols that are not part of the Web standards like IRC: for the babbling protocol, IRC and NNTP: for newsgroups, etc.
- The host name, it follows the //, for example www.telework.ro refers to the domain name telework.ro (Telework, Romania (ro)) and on its network, the host www. which can be a physical host (single computer, the rarest case, or a set of computers intended for this site (via a CDN or a load balancer), this is the case for sites with a higher audience), or still a virtual host (a site placed alongside other sites on a single server, this is a very common case). The decoding of the host name requires, for the client, a DNS request allowing him to know the address of the server(s), for the server the association of this host name with the root folder containing the site data, a possible reference to another name (HTTP REDIRECT), or access to another server, if it is only a relay.
- The document to provide, it follows the first / following the host name. The server decodes this information, to know the location of the file or script to be executed, it can be a symbolic name, converted via a URL rewrite by the server into different things, like the name of the called script and an argument which will be supplied to it, allowing it to supply the page according to the information contained in the database.
The DNS is an Internet service making it possible to obtain the correspondence between an easily readable and memorable host name, in an IP address. DNS is a hierarchy of servers distributed around the planet. However, the root DNS are all concentrated in the United States of America, due to the Internet’s military origin.
A web browser is typically used to operate an HTTP service. It is a software, capable of resolving the name by calling a DNS service, of exchanging with HTTP servers, according to the defined protocol, and capable of interpreting the HTML document, XHTML, various standard file formats, as defined by the w3c, and, if necessary, to return the documents provided to specialized plugins or external applications.
It is also possible to use a dedicated application, which will communicate with the HTTP server, via the JSON data exchange format, in order to organize the data exchanges more specifically. Some other software is content to exchange files such as images via the HTTP protocol, using the semantic possibilities of the HTML format.
To keep a user’s information from one page to another, during a journey, called a “session”, there are three main methods for this, Cookies, and the HTTP, “POST” and “GET” methods:
- Cookies (web cookies, Internet cookies, browser cookies, or simply cookies) are provided by the HTTP header and can be stored in the browser, but also be used to track the user from one site to another. Browsers therefore generally offer cookie blocking options to prevent this.
- The HTTP “GET” method is the default transaction method between the web browser and the HTTP server, in this case, the session information will be visible in the URL bar, via arguments (usually placed after the “?” depending on the page called, but can also use URL rewrites In the case of the GET method, the session information can be located in the hyperlink or in a form in GET mode.
- The HTTP “POST” method requires the use of an HTML form. This is not necessarily visible on the page, what appears to be a simple HTML link or button may very well be a form validation button and the passed information will not be visible in the URL bar in any case.
Translation and adaptation from Wikipedia