Unfortunately, a formal definition of a URL would require a tree-like structure so for this working definition we provide several examples, those that we will use most frequently in this course. Each URL begins with a "Protocol" , a string followed by a colon. The examples we will see most often are
The complexities begin with the next "two" fields, the "Internet Resource Address" and
"Resource Details". In particular, they may the same. Here are some examples.
In the first example the Internet Resource Address is //www.umsl.edu and the "Resource Details" is
/~siegel/newcourse/part1/URL-HTTP.html. In the other examples these fields are the same. Note also that the IRA for
mailto: does not begin with "//"
Finally, the URL can contain a "Query String", which is passed to the server for processing (examples to be provided). The format is
| name | value |
| hello | loneliness |
| goodbye | happiness |
HyperText Transfer Protocol comes in two flavors 1.0 and 1.1. For this introduction, we will focus on 1.0.
HTTP/1.0 is a stateless protocol. That is, after a transaction is completed the connection is broken and the server does not "remember" what transpired. Thus, from the clients point of view, if a second request depends upon the results of the first, all relevent information must be returned to the server (through a Query String (?)). The Telnet log below is from a simulated web transaction.
louie.umsl.edu> telnet www.umsl.edu 80 Trying 134.124.1.234... Connected to www.umsl.edu. Escape character is '^]'. GET /~siegel/little.html HTTP/1.0 Accept: text/html HTTP/1.1 200 OK Server: Netscape-Enterprise/3.6 Date: Sat, 25 Mar 2000 15:39:44 GMT Content-type: text/html Link: <http://www.umsl.edu/~siegel/little.html?PageServices>; rel="PageServices" Last-modified: Sun, 21 Dec 1997 18:13:42 GMT Content-length: 34 Accept-ranges: bytes Connection: close <html><body>Hello!</body></html> Connection closed by foreign host.
note: