For this exercise, you will explore the technology in the course and the basics of HTTP conversations.
Create a file exercise3.txt containing your answers to these questions.
- 
We will start to explore HTTP connections with the most basic tool available: a Telnet connection to port 80. You should be able to do that with any Telnet client; on Linux/Unix, the connection can be made like this: telnet server 80First request the URL http://cmpt470.csil.sfu.ca/~ggbaker/3/by Telnetting tocmpt470.csil.sfu.caon port 80 and making a request like this (with a trailing blank line to indicate the end of the request headers):GET /~ggbaker/3/ HTTP/1.1
 Host: cmpt470.csil.sfu.ca
 Connection: closeIn your exercise3.txtfile, indicate what the status code was for the server's response.
- 
Repeat the request sending an If-modified-sinceheader to simulate an existing cached version of the page:GET /~ggbaker/3/ HTTP/1.1
 Host: cmpt470.csil.sfu.ca
 Connection: close
 If-modified-since: Wed, 19 Sep 2012 01:53:52 GMTIn your exercise3.txtfile, indicate what the status code was for the server's response and how the response differed from the previous question.
- 
To see a redirect in action, request the URL http://cmpt470.csil.sfu.ca/~ggbaker/3(without the trailing slash) as above.In your exercise3.txtfile, indicate what the status code was for the server's response and how the response differed from the original request.
- 
[optional] Use Firebug or the Chrome Web Inspector to view the request the same URL. (In the “Net” tab, expand to see the request and response headers.) Also have a look at Firebug's display of the HTML source and associated CSS rules. (In the “HTML” tab, expand some elements to explore the markup.) 
- 
[optional] The Linux command line tools GETorcurlto request these URLs:GET http://cmpt470.csil.sfu.ca/~ggbaker/3/
 GET -esS http://cmpt470.csil.sfu.ca/~ggbaker/3
 curl http://cmpt470.csil.sfu.ca/~ggbaker/3/
 curl -I http://cmpt470.csil.sfu.ca/~ggbaker/3/
 curl -I http://cmpt470.csil.sfu.ca/~ggbaker/3Have a look at the output (especially of the second command) to see the information displayed. 
- 
Each group has a Subversion repository set up, and some instructions are provided. (If a group agrees amongst themselves, they can use GitHub.com instead but we will assume SubVersion in documentation.) We will start using it for this exercise. Start by checking out your group's repository with your favourite Subversion client. Create a directory named with your userid in the repository for your work. On the Unix/Linux command line, that looks like: svn co https://punch.cs.sfu.ca/svn/CMPT470-1121-g-group-name 470repo
 cd 470repo
 svn mkdir userid
 cd useridSee the groups page in CourSys for your exact repository URL. Create a file helloworld.txtin that directory (containing a line or two of text) and commit it to the repository. Again, in Unix/Linux, that's:svn add helloworld.txt
 svn ciFor the rest of the course, work will be submitted by either committing code to the repository, or uploading and submitting a URL. Of course, your group should use the repository to coordinate sharing group work. Determine the Subversion URL of the file you just created (which svn info helloworld.txtwill tell you). Add it to the fileexercise3.txtas your “answer” to this question.
- 
Use an SCP/SFTP client to transfer the exercise3.txtfile to thepublic_htmldirectory in your home directory oncmpt470.csil.sfu.ca.
Submit the URL of your exercise3.txt file through the Course Management System.