SlideShare ist ein Scribd-Unternehmen logo
1 von 53
Web Server Technologies Part I: HTTP & Getting Started Joe Lima Director of Product Development  Port80 Software, Inc. [email_address]
Tutorial Content Introduction to HTTP ,[object Object],[object Object],[object Object],Setup and deployment ,[object Object],[object Object],[object Object],Web Server Technologies |  Part I: HTTP & Getting Started
Preliminaries - Recommended Texts Administrating Web Servers, Security & Maintenance  Larson and Stephens, Prentice Hall HTTP The Definitive Guide Gourley and Totty, et al., O’Reilly Online resources are plentiful and will be cited along the way. Web Server Technologies |  Part I: HTTP & Getting Started
The Role of a Web Server ,[object Object],[object Object],[object Object],[object Object],[object Object],Web Server Technologies |  Part I: HTTP & Getting Started a box or a service?
An Introduction to HTTP ,[object Object],[object Object],[object Object],[object Object],[object Object],Web Server Technologies |  Part I: HTTP & Getting Started
A Brief Digression on TCP/IP Web Server Technologies |  Part I: HTTP & Getting Started HTTP sits atop the TCP/IP Protocol Stack Network Interfaces HTTP TCP IP Application Layer Transport Layer Network Layer Data Link Layer
A Brief Digression on TCP/IP, cont. ,[object Object],[object Object],Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Brief Digression on TCP/IP, cont. Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
A Brief Digression on TCP/IP, cont. Web Server Technologies |  Part I: HTTP & Getting Started How an HTTP Message is delivered over TCP/IP connection: GET /index.html HTTP/1.1<CRLF> Host: www.hostname.com Con…  HTTP Message’s data stream is chopped up into chunks small enough to fit in a TCP segment The segments are shipped to the right destination inside IP datagrams  The chunks ride inside TCP segments used to reassemble them correctly on the other end of the connection
A Brief Digression on TCP/IP, cont. Web Server Technologies |  Part I: HTTP & Getting Started HTTPS (HTTP + SSL/TLS) Although a different protocol, service and port, HTTPS is usually integrated with the Web server FTP Often run on the same box as the HTTP server to provide file transfer capabilities SMTP Sometimes run with Web server (email gateways) SSH Widely used instead of telnet for remote admin Other application layer protocols use TCP/IP to provide Internet services often found in company with HTTP
Introduction to HTTP - continued Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction to HTTP - continued Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction to HTTP - continued Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Introduction to HTTP - continued Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
Basic HTTP Request/Response Cycle Web Server Technologies |  Part I: HTTP & Getting Started HTTP Server HTTP Client Resource HTTP Request HTTP Response www.foo.com /bar Asks for resource by its URL: http://www.foo.com/bar.html
An HTTP Request/Response Chain Web Server Technologies |  Part I: HTTP & Getting Started HTTP Client DMZ Local DNS External DNS Servers Internet Transparent Proxies HTTP Server Reverse Proxy LAN Egress Proxy Network at Hosting Provider Root DNS Servers
Types and Uses of Proxy Servers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Looking into HTTP Web Server Technologies |  Part I: HTTP & Getting Started To really understand Web servers (and clients), study the grammar,  syntax and semantics of HTTP requests and responses: ,[object Object],[object Object],[object Object],[object Object]
Looking into HTTP - continued Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Making a simple HTTP request Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at the Request Line Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at the Request Methods Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More Request Methods Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at the Request URI Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at the Status Line Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at HTTP Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at General Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at Request Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Some More Request Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at Response Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Closer Look at Entity Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More Entity Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More Entity Headers Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Planning Web Server Deployments Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Choosing Among the Hosting Options Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Choosing Server Software Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Choosing Server Software, cont. Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
Sizing a Web Server Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Sizing a Web Server, cont Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Dealing with DNS Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Simplistic Model of the DNS System Web Server Technologies |  Part I: HTTP & Getting Started Root DNS Server ISP DNS Server ISP DNS Server 1 2 3 4 5 6 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Dealing with DNS, cont. Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Virtual and Physical Site Structure Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Configuring Virtual-Physical Mappings Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Configuring Virtual-Physical Mappings Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object]
Configuring Virtual-Physical Mappings Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Configuring Virtual-Physical Mappings Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Virtual Hosting Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
Managing Users and Hosts Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
Managing Users and Hosts Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object]
Managing Users and Hosts Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object]
Basic SSL Configuration Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
About Port80 Software Web Server Technologies |  Part I: HTTP & Getting Started ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (17)

Apache error
Apache errorApache error
Apache error
 
Utosc2007_Apache_Configuration.ppt
Utosc2007_Apache_Configuration.pptUtosc2007_Apache_Configuration.ppt
Utosc2007_Apache_Configuration.ppt
 
Php1
Php1Php1
Php1
 
Apache Web Server Architecture Chaitanya Kulkarni
Apache Web Server Architecture Chaitanya KulkarniApache Web Server Architecture Chaitanya Kulkarni
Apache Web Server Architecture Chaitanya Kulkarni
 
Installing and configuring apache
Installing and configuring apacheInstalling and configuring apache
Installing and configuring apache
 
Apache
ApacheApache
Apache
 
Apache web server
Apache web serverApache web server
Apache web server
 
Apache web server
Apache web serverApache web server
Apache web server
 
Setting up a web server in Linux (Ubuntu)
Setting up a web server in Linux (Ubuntu)Setting up a web server in Linux (Ubuntu)
Setting up a web server in Linux (Ubuntu)
 
Meeting 13. web server i
Meeting 13. web server iMeeting 13. web server i
Meeting 13. web server i
 
Under the Covers with the Web
Under the Covers with the WebUnder the Covers with the Web
Under the Covers with the Web
 
Apache ppt
Apache pptApache ppt
Apache ppt
 
Apache Presentation
Apache PresentationApache Presentation
Apache Presentation
 
Apache Ppt
Apache PptApache Ppt
Apache Ppt
 
Apache web server
Apache web serverApache web server
Apache web server
 
Web Server(Apache),
Web Server(Apache), Web Server(Apache),
Web Server(Apache),
 
Babitha.4appach
Babitha.4appachBabitha.4appach
Babitha.4appach
 

Andere mochten auch

Shared Oracle Hosting (Linux)
Shared Oracle Hosting (Linux)Shared Oracle Hosting (Linux)
Shared Oracle Hosting (Linux)webhostingguy
 
Apache Manager Table of Contents
Apache Manager Table of ContentsApache Manager Table of Contents
Apache Manager Table of Contentswebhostingguy
 
Quick Reference Guide: Shared Hosting
Quick Reference Guide: Shared HostingQuick Reference Guide: Shared Hosting
Quick Reference Guide: Shared Hostingwebhostingguy
 
Windows Hosting Service-Level Description
Windows Hosting Service-Level DescriptionWindows Hosting Service-Level Description
Windows Hosting Service-Level Descriptionwebhostingguy
 
Q3 2009 Hardware Teleconference
Q3 2009 Hardware TeleconferenceQ3 2009 Hardware Teleconference
Q3 2009 Hardware Teleconferencewebhostingguy
 
INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...
INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...
INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...webhostingguy
 

Andere mochten auch (6)

Shared Oracle Hosting (Linux)
Shared Oracle Hosting (Linux)Shared Oracle Hosting (Linux)
Shared Oracle Hosting (Linux)
 
Apache Manager Table of Contents
Apache Manager Table of ContentsApache Manager Table of Contents
Apache Manager Table of Contents
 
Quick Reference Guide: Shared Hosting
Quick Reference Guide: Shared HostingQuick Reference Guide: Shared Hosting
Quick Reference Guide: Shared Hosting
 
Windows Hosting Service-Level Description
Windows Hosting Service-Level DescriptionWindows Hosting Service-Level Description
Windows Hosting Service-Level Description
 
Q3 2009 Hardware Teleconference
Q3 2009 Hardware TeleconferenceQ3 2009 Hardware Teleconference
Q3 2009 Hardware Teleconference
 
INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...
INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...
INSTALLING AND CONFIGURING APACHE TOOLKIT FOR SERVICEGUARD ...
 

Ähnlich wie Web Server Technologies I: HTTP

internet programming and java notes 5th sem mca
internet programming and java notes 5th sem mcainternet programming and java notes 5th sem mca
internet programming and java notes 5th sem mcaRenu Thakur
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009Cathie101
 
Web technology-guide
Web technology-guideWeb technology-guide
Web technology-guideSrihari
 
Hypertext Transfer Protocol
Hypertext Transfer ProtocolHypertext Transfer Protocol
Hypertext Transfer ProtocolRajan Pandey
 
Hypertex transfer protocol
Hypertex transfer protocolHypertex transfer protocol
Hypertex transfer protocolwanangwa234
 
HTTPProtocol HTTPProtocol.pptHTTPProtocol.ppt
HTTPProtocol HTTPProtocol.pptHTTPProtocol.pptHTTPProtocol HTTPProtocol.pptHTTPProtocol.ppt
HTTPProtocol HTTPProtocol.pptHTTPProtocol.pptVietAnhNguyen337355
 
Lecture 1 Introduction to Web Development.pptx
Lecture 1 Introduction to Web Development.pptxLecture 1 Introduction to Web Development.pptx
Lecture 1 Introduction to Web Development.pptxKevi20
 
PHP Training: Module 1
PHP Training: Module 1PHP Training: Module 1
PHP Training: Module 1hussulinux
 
internet principles of operation By ZAK
internet principles of operation By ZAKinternet principles of operation By ZAK
internet principles of operation By ZAKTabsheer Hasan
 
Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Lori Head
 

Ähnlich wie Web Server Technologies I: HTTP (20)

Http VS. Https
Http VS. HttpsHttp VS. Https
Http VS. Https
 
internet programming and java notes 5th sem mca
internet programming and java notes 5th sem mcainternet programming and java notes 5th sem mca
internet programming and java notes 5th sem mca
 
Http
HttpHttp
Http
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
Web Services 2009
Web Services 2009Web Services 2009
Web Services 2009
 
Web technology-guide
Web technology-guideWeb technology-guide
Web technology-guide
 
Hypertext Transfer Protocol
Hypertext Transfer ProtocolHypertext Transfer Protocol
Hypertext Transfer Protocol
 
The HTTP and Web
The HTTP and Web The HTTP and Web
The HTTP and Web
 
Http_Protocol.pptx
Http_Protocol.pptxHttp_Protocol.pptx
Http_Protocol.pptx
 
Http protocol
Http protocolHttp protocol
Http protocol
 
Hypertex transfer protocol
Hypertex transfer protocolHypertex transfer protocol
Hypertex transfer protocol
 
HTTPProtocol HTTPProtocol.pptHTTPProtocol.ppt
HTTPProtocol HTTPProtocol.pptHTTPProtocol.pptHTTPProtocol HTTPProtocol.pptHTTPProtocol.ppt
HTTPProtocol HTTPProtocol.pptHTTPProtocol.ppt
 
An Introduction to HTTP
An Introduction to HTTPAn Introduction to HTTP
An Introduction to HTTP
 
Lecture 1 Introduction to Web Development.pptx
Lecture 1 Introduction to Web Development.pptxLecture 1 Introduction to Web Development.pptx
Lecture 1 Introduction to Web Development.pptx
 
CN UNIT V.pptx
CN UNIT V.pptxCN UNIT V.pptx
CN UNIT V.pptx
 
PHP Training: Module 1
PHP Training: Module 1PHP Training: Module 1
PHP Training: Module 1
 
Starting With Php
Starting With PhpStarting With Php
Starting With Php
 
internet principles of operation By ZAK
internet principles of operation By ZAKinternet principles of operation By ZAK
internet principles of operation By ZAK
 
Application layer
Application layerApplication layer
Application layer
 
Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207Advanced Web Design And Development BIT 3207
Advanced Web Design And Development BIT 3207
 

Mehr von webhostingguy

Running and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test FrameworkRunning and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test Frameworkwebhostingguy
 
MySQL and memcached Guide
MySQL and memcached GuideMySQL and memcached Guide
MySQL and memcached Guidewebhostingguy
 
Novell® iChain® 2.3
Novell® iChain® 2.3Novell® iChain® 2.3
Novell® iChain® 2.3webhostingguy
 
Load-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web serversLoad-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web serverswebhostingguy
 
SQL Server 2008 Consolidation
SQL Server 2008 ConsolidationSQL Server 2008 Consolidation
SQL Server 2008 Consolidationwebhostingguy
 
Master Service Agreement
Master Service AgreementMaster Service Agreement
Master Service Agreementwebhostingguy
 
PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...webhostingguy
 
Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...webhostingguy
 
Managing Diverse IT Infrastructure
Managing Diverse IT InfrastructureManaging Diverse IT Infrastructure
Managing Diverse IT Infrastructurewebhostingguy
 
Web design for business.ppt
Web design for business.pptWeb design for business.ppt
Web design for business.pptwebhostingguy
 
IT Power Management Strategy
IT Power Management Strategy IT Power Management Strategy
IT Power Management Strategy webhostingguy
 
Excel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for MerchandisersExcel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for Merchandiserswebhostingguy
 
Parallels Hosting Products
Parallels Hosting ProductsParallels Hosting Products
Parallels Hosting Productswebhostingguy
 
Microsoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 MbMicrosoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 Mbwebhostingguy
 

Mehr von webhostingguy (20)

File Upload
File UploadFile Upload
File Upload
 
Running and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test FrameworkRunning and Developing Tests with the Apache::Test Framework
Running and Developing Tests with the Apache::Test Framework
 
MySQL and memcached Guide
MySQL and memcached GuideMySQL and memcached Guide
MySQL and memcached Guide
 
Novell® iChain® 2.3
Novell® iChain® 2.3Novell® iChain® 2.3
Novell® iChain® 2.3
 
Load-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web serversLoad-balancing web servers Load-balancing web servers
Load-balancing web servers Load-balancing web servers
 
SQL Server 2008 Consolidation
SQL Server 2008 ConsolidationSQL Server 2008 Consolidation
SQL Server 2008 Consolidation
 
What is mod_perl?
What is mod_perl?What is mod_perl?
What is mod_perl?
 
What is mod_perl?
What is mod_perl?What is mod_perl?
What is mod_perl?
 
Master Service Agreement
Master Service AgreementMaster Service Agreement
Master Service Agreement
 
Notes8
Notes8Notes8
Notes8
 
PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...PHP and MySQL PHP Written as a set of CGI binaries in C in ...
PHP and MySQL PHP Written as a set of CGI binaries in C in ...
 
Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...Dell Reference Architecture Guide Deploying Microsoft® SQL ...
Dell Reference Architecture Guide Deploying Microsoft® SQL ...
 
Managing Diverse IT Infrastructure
Managing Diverse IT InfrastructureManaging Diverse IT Infrastructure
Managing Diverse IT Infrastructure
 
Web design for business.ppt
Web design for business.pptWeb design for business.ppt
Web design for business.ppt
 
IT Power Management Strategy
IT Power Management Strategy IT Power Management Strategy
IT Power Management Strategy
 
Excel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for MerchandisersExcel and SQL Quick Tricks for Merchandisers
Excel and SQL Quick Tricks for Merchandisers
 
OLUG_xen.ppt
OLUG_xen.pptOLUG_xen.ppt
OLUG_xen.ppt
 
Parallels Hosting Products
Parallels Hosting ProductsParallels Hosting Products
Parallels Hosting Products
 
Microsoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 MbMicrosoft PowerPoint presentation 2.175 Mb
Microsoft PowerPoint presentation 2.175 Mb
 
Reseller's Guide
Reseller's GuideReseller's Guide
Reseller's Guide
 

Web Server Technologies I: HTTP

  • 1. Web Server Technologies Part I: HTTP & Getting Started Joe Lima Director of Product Development Port80 Software, Inc. [email_address]
  • 2.
  • 3. Preliminaries - Recommended Texts Administrating Web Servers, Security & Maintenance Larson and Stephens, Prentice Hall HTTP The Definitive Guide Gourley and Totty, et al., O’Reilly Online resources are plentiful and will be cited along the way. Web Server Technologies | Part I: HTTP & Getting Started
  • 4.
  • 5.
  • 6. A Brief Digression on TCP/IP Web Server Technologies | Part I: HTTP & Getting Started HTTP sits atop the TCP/IP Protocol Stack Network Interfaces HTTP TCP IP Application Layer Transport Layer Network Layer Data Link Layer
  • 7.
  • 8.
  • 9. A Brief Digression on TCP/IP, cont. Web Server Technologies | Part I: HTTP & Getting Started How an HTTP Message is delivered over TCP/IP connection: GET /index.html HTTP/1.1<CRLF> Host: www.hostname.com Con… HTTP Message’s data stream is chopped up into chunks small enough to fit in a TCP segment The segments are shipped to the right destination inside IP datagrams The chunks ride inside TCP segments used to reassemble them correctly on the other end of the connection
  • 10. A Brief Digression on TCP/IP, cont. Web Server Technologies | Part I: HTTP & Getting Started HTTPS (HTTP + SSL/TLS) Although a different protocol, service and port, HTTPS is usually integrated with the Web server FTP Often run on the same box as the HTTP server to provide file transfer capabilities SMTP Sometimes run with Web server (email gateways) SSH Widely used instead of telnet for remote admin Other application layer protocols use TCP/IP to provide Internet services often found in company with HTTP
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Basic HTTP Request/Response Cycle Web Server Technologies | Part I: HTTP & Getting Started HTTP Server HTTP Client Resource HTTP Request HTTP Response www.foo.com /bar Asks for resource by its URL: http://www.foo.com/bar.html
  • 16. An HTTP Request/Response Chain Web Server Technologies | Part I: HTTP & Getting Started HTTP Client DMZ Local DNS External DNS Servers Internet Transparent Proxies HTTP Server Reverse Proxy LAN Egress Proxy Network at Hosting Provider Root DNS Servers
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.