Upload
sopekmir
View
282
Download
3
Embed Size (px)
DESCRIPTION
Citation preview
The Principles of Web TechnologyManagement
http://purl.org/net/wtm
Principia Webica
HTTP protocol, CGIweb application objects
&Principles of Web Design
HTTP
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
HTTP – main features HTTP is …
application Layer protocola Request-Response protocol in the Client-Server computing model:Clients: Users Agents – UA(browsers, crawlers, robots,
spiders, proxies etc)Servers: Web Servers (including proxies)
stateless protocol (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 are identified by URL (Uniform Resource Locators)
HTTP – main features HTTP basic operational model
HTTP – main features IX HTTP methods (verbs)
HEADGETPOSTPUTDELETETRACEOPTIONSCONNECTPATCH
Safe methods
Idempotent methods
HTTP – main features Naked HTTP illustrated
CGI – Common Gateway Interface Talk to your server
Połączen ie TCP
http: / / e.m m .com .pl
POS T / cgi- bin/ order.exe HTTP/ 1.1Host: e.m m .com .plContent-Type:application/ x- www- form - urlencodedContent- Length: 140
Nam e=Kowalski & Produkt=Buty & Cena = 101 & B1=S ubm it
Nam e=Kowalski & Produkt=Buty & Cena = 101 & B1=S ubm it
HTTP/ 1.1 200 OKS erver: . . . . .Content- Length: 667
<htm l><head>... . . .
PO S T / cg- bin / order.exe HTTP / 1.1Host: e .m m .com .pl
80
order.exe
I m ię
Produkt
. . . . .
. . . . .
stdin
stdout
ENVHost: e.m m .com .plContent-Type:application/ x- www- form - urlencodedContent- Length: 140
CGI - Com m on Gateway I nterface
CGI – Common Gateway Interface Talk to your server
POST /tf.asp HTTP/1.1Host: www.ehandel.plContent-Type: application/x-www-form-urlencodedContent-Length: 14
T3=z&B1=Submit
„Objects” of the Web Applications Fundamental structures
RequestResponseSessionApplicationServer
Server-side software Harder part …
Server-side technologies and their languages
Pure CGI (any)PHP (php)ASP (VB,Jscript, Python)ASP.NET (any)JSP (Java)And …CFMRuby on Rails …
Server-side software Most important servers
Server-side solutions
ApacheIISNginxGWSlighttpd
Vendor Product Web Sites Hosted Percent
Apache Apache 179,720,332 60.31%
Microsoft IIS 57,644,692 19.34%
Igor Sysoev nginx 22,806,060 7.65%
Google GWS 15,161,530 5.09%
lighttpd lighttpd 1,796,471 0.60%
Netcraft survey in March 2011.
[edit]
http://en.wikipedia.org/wiki/Web_server
Client-side software It used to be easier part …
JavaScript (never to confuse with Java)
VBScript (forget it !)AJAX (JavaScript + XML)Flash/FlexSliverLight
Web software design principles Sir Tim-Berners-Lee again …
SimlicityModular DesignToleranceDecentralizationTest of Independent InventionPrinciple of Least PowerStudy them:
http://www.w3.org/DesignIssues/Principles.html
NEXT …
Your own virtual server !
Lab work 6.
1) Remeber: http://purl.org/net/wtm
Explore the web for topics:a. Find out more about Stateless nature of HTTP protocolb. What is proxy? How it works ?c. Find out more about HTTP methods: TRACE, OPTIONS, PATCHd. Practice with manual execution of HTTP commandse. Find out more about classical CGIf. Find out more about Request, Response, Session, Application,
Server objects of the Web programmingg. Use Netcraft (www.netcraft.com) to find out interesting
statistics about the Web.h. Read http://www.w3.org/DesignIssues/Principles.html and find
out more about the principles in the other sources3 pages per topic