100% found this document useful (1 vote)
457 views20 pages

Web Server Basics and Operations Guide

Uploaded by

sukherafareed
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
457 views20 pages

Web Server Basics and Operations Guide

Uploaded by

sukherafareed
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Web Server

Basic operations
Web Server
• The main job of a Web server is to respond to
requests from Web client computers by providing
resources.
• There are 3 components of a Web server:
– Hardware
– Operating system software
– Web server software

2
Web Server
On the hardware side
• Web server computers
– More memory, larger hard disk drives, and faster
processors than typical PCs
• A web server stores a website's component files
and delivers them to the end-user's device.
• It is connected to the Internet and can be
accessed through a domain name like [Link].
Web Server
• On the software side, a web server includes
several parts that
– control how web users access hosted files
– generates and transmits responses to client
requests for Web resources.
Web Server
At the most basic level:
– Whenever a browser needs a file hosted on a web
server, the browser requests the file via HTTP.
– When the request reaches the correct web server
(hardware), the HTTP server (software) sends the
requested document back, also through HTTP.
HTTP
• HTTP is the protocol which the browser and
web servers communicate by.
• HTTP is short for Hyper Text Transfer Protocol.
• The web browser (client) initiates the
communication by opening a TCP/IP connection
to the web server, and sending an HTTP request
via the open connection.
• The web server responds by sending an HTTP
response back.
HTTP Request Types
• Request methods
– Get
• Get (retrieves) information from a server
• i.e: retrieve HTML document or image, fetch search
results
– Post
• Post (sends) data to a server
• i.e: authentication information, form data.
Web Server Response
 The server can generate the response message
in a variety of ways:
 The server simply retrieves the file associated
with the URL and returns the contents to the
client.
 The server may invoke a script that
communicates with other servers or a back-end
database to construct the response message.
Accessing web servers
Two-Tier Client/Server Architecture

• Two-tier client/server architecture has one client and


one server

10
Three-Tier and N-Tier Client/Server
Architectures
Three-tier architecture
Extends two-tier architecture to allow additional processing (e.g.,
collection of data from a database) before responses to requests are
made

N-tier architectures
Higher-order architectures

11
Steps in Handling a Client Request
 A Web server proceeds through the following
steps in handling an HTTP request:
 Read and parse the HTTP request message
for example GET the resource /[Link]
 Translate the URL to a file name
for example the resource be located in the base directory
such as /www, where the URL
[Link] corresponds to
the file of www/foo/[Link]
 Determine whether the request is authorized
 Generate and transmit the response to the
requesting client
Access Control
• A Web server may limit which users can access
certain resources. Access control requires a
combination of authentication and
authorization.
– Authentication identifies the user who originated
the request.
– Authorization determines which users have access
to a particular resource.
Authentication
• Most client-server systems authenticate a user
by asking for a name and password.
• Web server must perform authentication for
every request for a resource that has access
restrictions.
• The server returns an HTTP response that
indicates that the request requires authorization.
• The response also identifies what kind of
authentication is required.
Authorization
 To control access to Web resources, the server must
employ an authorization policy.
 A policy typically expressed in terms of an access control
list that enumerates the users who are granted or denied
access to the resources.
 In addition to checking the user name, the server may
allow or deny access to the resource based on other
information associated with the HTTP request, such as the
host name or IP address of the requesting client.
 Authenticating HTTP requests can impose a heavy load on
the Web server.
Types of Web Sites
• A Web site consists of a collection of web pages which are digital
files generally written using HyperText Markup Language (HTML).

• Intranets: Corporate networks that house internal memos,


corporate policy handbooks, and a variety of other corporate
documents
• Extranets: Intranets that allow authorized parties outside the
company to access information stored in the system
• Transaction-processing sites: Commerce sites that must be
available 24 hours a day, seven days a week
• Content-delivery sites: Deliver content such as news, histories,
summaries, and other digital information

16
Virtual hosting
• A virtual host can run more than one website at a time.
Configure it properly, and you'll have one machine that can
load two, three, or more websites.
• When we think about the internet, we think in terms of
singularity. One website address resolves to one machine that
holds all the content. Virtual hosting turns this idea on its
head.
• The main benefit to virtual hosting is it allows companies to
host multiple websites (each with their own name and
content) on a single server. This method allows companies to
pay less, as they're sharing costs with many other
organizations.
• Virtual hosts are used in two main ways:
• External sales: Companies like GoDaddy and Wix
host multiple websites on their servers.
About 330,000 web hosting providers like this are
available worldwide. They all offer some type of
virtual web server.
• Internal traffic: Companies with an external-facing
website and an internal-facing intranet might use a
virtual host. They don't need two servers for this
traffic.
Host types
• Someone who wants to visit your website types in an
address and hopes to end up in the right destination.
Virtual servers handle that query in a few different ways.
• You could base your virtual server on:
• Internet protocol (IP) address. Use a different IP for each
domain, but point them to one server. Allow that one
server to resolve multiple IP addresses.
• Name. Use one IP for all domains on the server. During
connection, ask your visitors which site they'd like to visit.
After that query, resolve the visit to the proper site.
• Port. Assign each website to a different port on the server.
Drawbacks
• Drawbacks of these methods include:
• Delays. Choose the name system, and some
browsers will struggle to authenticate the site.
Your visitors could be told your site is not secure,
or others may wait long periods for your site to
load.
• Complexity. It takes little coding to set up IP
addresses for each site, but you may run out of
available IP addresses to use. And you must keep
track of which address corresponds to each site.

Common questions

Powered by AI

Virtual hosting enables a single server to host multiple websites by utilizing distinct domains, names, or ports, allowing each site to maintain its own unique identity and content. It provides an economic benefit by sharing server resources and costs among different entities, reducing the need for multiple physical servers. Companies such as GoDaddy and Wix leverage virtual hosting to provide services to multiple clients on a single server . However, potential drawbacks include increased complexity in managing multiple configurations and potential delays in site resolutions if using name-based hosting, as some browsers might face authentication issues .

Authentication and authorization serve distinct but complementary roles in web server security management. Authentication is the process of verifying a user's identity, typically through credentials like a username and password, to ensure that the user is who they claim to be . Authorization follows, determining whether the authenticated user has permission to access certain resources or actions based on predefined policies, such as an access control list . Both processes are essential: authentication prevents unauthorized users from gaining access, while authorization ensures that authenticated users only perform actions or access data they are permitted to .

Access control in web servers combines authentication and authorization processes to ensure that only authorized users access specific resources. Authentication typically involves verifying a user's identity through credentials like a username and password, which must be performed anew for every restricted resource request . Authorization then determines permissible user actions based on a server-defined policy, often articulated through an access control list . A significant challenge is the server load, as authenticating HTTP requests frequently can become resource-intensive, potentially slowing down server responsiveness .

A web server consists of three main components: hardware, operating system software, and web server software. The hardware component involves powerful computers with more memory, larger hard disks, and faster processors than standard PCs, enabling them to handle multiple client requests efficiently . The operating system software manages the server's technological resources, while the web server software, such as HTTP servers, controls and processes user access to hosted files. Through this software, web servers handle HTTP requests from clients by initiating a TCP/IP connection, parsing and translating the request, verifying authorization, and generating appropriate responses . These components work in tandem to ensure that client requests are effectively processed and delivered.

N-tier architecture, an extension of the three-tier model, involves multiple layers where each tier can be independently managed, developed, and scaled. This modular approach supports complex web applications by isolating different components such as presentation, business logic, and data management, which enhances scalability, maintainability, and fault isolation . However, it introduces increased management complexity, requires greater expertise for implementation, and can result in reduced performance due to additional overhead in layer communication . Despite these challenges, N-tier architecture's ability to effectively handle large-scale applications with complex interactions often outweighs the simplicity and directness of two-tier or basic three-tier systems, making it suitable for enterprises needing flexibility and durability in web application management.

GET and POST are two primary HTTP methods used for client-server communication. The GET method is used to retrieve information from a server, commonly employed for fetching HTML documents or images and obtaining search results. In contrast, the POST method is used to send data to a server, such as when submitting form data or authentication information . The key difference lies in the data handling; GET requests append data within the URL, making them less secure, whereas POST requests send data within the request body, offering enhanced security and supporting larger data payloads .

HTTP, or Hyper Text Transfer Protocol, facilitates communication between web browsers and web servers by opening a TCP/IP connection through which HTTP requests are sent. Upon receiving a request, the web server undergoes several steps: first, it reads and parses the HTTP request message, then translates the requested URL into a specific file path on the server. The server next checks if the request is authorized; if access is granted, it generates an HTTP response, which may involve simply retrieving the file or executing server-side scripts for dynamic content generation, before transmitting it back to the client . This process allows web pages to be delivered to users efficiently while ensuring proper access controls are maintained .

IP-based virtual hosting allows each domain to be assigned a unique IP address, enabling straightforward access and less complexity in configuration but can lead to a shortage of available IP addresses and higher costs . Name-based virtual hosting uses a single IP for multiple domains, which reduces IP usage and costs but adds complexity in server configuration to resolve requests correctly. One must also handle potential authentication issues, as some browsers may have difficulties identifying the correct domain, leading to delays or security warnings . Each method offers distinct trade-offs between cost and complexity, requiring careful consideration depending on server resources and client needs.

Transaction-processing sites, such as e-commerce platforms, benefit significantly from 24/7 availability as they facilitate round-the-clock transactions, including purchases and financial exchanges . Constant uptime is crucial for these sites to avoid losing clients and revenue potential, maintain customer trust, and keep up with global market demands where users might access the platform at varying hours worldwide . Uninterrupted service ensures transactional reliability and a seamless user experience, both critical components in maintaining competitive advantage and customer satisfaction.

A two-tier client/server architecture involves direct communication between a client and a server, allowing straightforward interaction for resource requests without intermediary layers, which simplifies development and deployment. However, this simplicity comes at the cost of scalability and performance under heavy loads . On the other hand, a three-tier architecture introduces an additional layer (often a server-side application layer), allowing for more complex application logic and interaction with databases. This separation enhances scalability, manageability, and reusability of components but adds complexity in terms of communication and maintenance .

You might also like