3. HTTP– RFC 2616http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol The Hypertext Transfer Protocol (HTTP) is a networking protocol for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web. HTTP/0.9 — 1990, HTTP/1.0 —May 1996, HTTP/1.1 — June 1999 The most important current document – RFC 2616 – defines HTTP/1.1 - http://tools.ietf.org/html/rfc2616
4. HTTP– mainfeaturesHTTP is … applicationLayerprotocol a Request-ResponseprotocolintheClient-Servercomputing model: Clients:UsersAgents – UA(browsers, crawlers, robots, spiders, proxies etc) Servers: Web Servers (includingproxies) statelessprotocol(each request as an independent transaction that is unrelated to any previous request so that the communication consists of independent pairs of requests and responses) resource(network data objects) based. Resources areidentified by URL (Uniform ResourceLocators)
9. CGI – CommonGatewayInterfaceTalk to yourserver POST /tf.asp HTTP/1.1Host: www.ehandel.plContent-Type: application/x-www-form-urlencodedContent-Length: 14T3=z&B1=Submit
10. „Objects” of the Web ApplicationsFundamentalstructures Request Response Session Application Server
11. Server-sidesoftwareHarder part … Server-sidetechnologies and theirlanguages Pure CGI (any) PHP (php) ASP (VB,Jscript, Python) ASP.NET (any) JSP (Java) And … CFM Ruby on Rails …
12. Netcraftsurvey in March 2011. [edit] Server-sidesoftwareMost importantservers Server-sidesolutions Apache IIS Nginx GWS lighttpd http://en.wikipedia.org/wiki/Web_server
13. Client-sidesoftwareItused to be easier part … JavaScript (never to confusewith Java) VBScript (forgetit !) AJAX (JavaScript + XML) Flash/Flex SliverLight
14. Web software design principlesSir Tim-Berners-Leeagain … Simlicity Modular Design Tolerance Decentralization Test of Independent Invention Principle of Least Power Studythem: http://www.w3.org/DesignIssues/Principles.html
16. Lab work6. Remeber: http://purl.org/net/wtm Explore the web for topics: Find out more about Stateless nature of HTTP protocol What is proxy? How it works ? Find out more about HTTP methods: TRACE, OPTIONS, PATCH Practice with manual execution of HTTP commands Find out more about classical CGI Find out more about Request, Response, Session, Application, Server objects of the Web programming Use Netcraft (www.netcraft.com) to find out interesting statistics about the Web. Read http://www.w3.org/DesignIssues/Principles.html and find out more about the principles in the other sources 3 pages per topic