Web Server Administration Chapter 6 Configuring a Web Server
Feb 25, 2016
Web Server Administration
Chapter 6Configuring a Web Server
Overview Understand how a Web server works Install IIS and Apache Web servers Examine the IIS and Apache properties Host multiple Web sites Configure new Web sites in IIS and
Apache Understand virtual directories
How a Web Server Works HTTP (Hypertext Transfer Protocol) defines
how information is passed between a browser and a Web server
The two most popular Web servers are Apache from Apache Software Foundation Internet Information Services (IIS) from
Microsoft The original Web server from Microsoft available on
Windows NT was Internet Information Server Almost two-thirds of all Web servers use
Apache
How a Web Server Works As is true with other servers such as
DNS, Web servers listen for communication at a port The default port is 80 You can also create Web servers at port
numbers greater than 1023* Each Web server has a root, which is
where you store the HTML documents
Understanding HTTP The current version of HTTP is 1.1
Virtually no browsers are so old that they do not support 1.1
HTTP is a stateless protocol, meaning that each Web page sent is independent of every other Web page sent This makes it more challenging to
create a shopping cart application
Understanding HTTP HTTP 1.1 supports persistent
connections This allows the browser to receive
multiple files in one TCP connection This can speed up communication Although you see a single page in
your browser, it can be composed of many text and image files
Understanding HTTP When the browser sends a request to a
Web server, it looks like:GET /hello.htm HTTP/1.1Host: www.technowidgets.com The above requests the hello.htm file from
the root of the Web server It specifies the host of
www.technowidgets.com There could be multiple hosts at the IP address
Understanding HTTP The following shows some of the
headers along with the HTML that the Web server would send:
HTTP/1.1 200 OKServer: Microsoft-IIS/5.0Content-Type: text/htmlLast-Modified: Fri, 17 May 2005 18:21:25 GMTContent-Length: 43<html><body>Hello, World</body></html> The headers contain information about
the page
Features in Apache Apache 1.3 was used for many years but
version 2.0 was released in 2001 Apache can also be used as a proxy server
A proxy server isolates your real Web server from the Internet
Apache 2.0 has Better support for Windows Support for IPv6 Simplified configuration Unicode support in Windows Multilanguage error responses
Apache supports many programming languages such as Perl and PHP
Features in IIS IIS versions associated with
Windows versions Windows NT – IIS 4.0 Windows 2000 – IIS 5.0 Windows Server 2003 – IIS 6.0
SMTP can be easily added so you can send e-mail from your Web pages
Features in IIS 5.0 Web Distributed Authoring and Versioning
(WebDAV) Allows a server to share Web-based files
Named virtual hosting Multiple Web sites can share a single IP
address Per Web site bandwidth throttling
Control bandwidth by Web site Kerberos authentication Secure Sockets Layer 3.0
Encrypted communication
Features in IIS 6.0 Increased security
Default permits only HTML documents Expanded language support
Can use XML and SOAP Support for IPv6 Increased dependability
Kernel-mode HTTP service Self-healing mechanism
Components in IIS File Transfer Protocol (FTP) server
To transfer files between user and server FrontPage 2000 Server Extensions
Used by programs to transfer files to and from a Web site
NNTP Service Used to create user forums
SMTP Service World Wide Web Server
Installing Apache Apache can be installed when you
install Linux It is also on Red Hat CD 2 If you install it from the Red Hat CD, the
directories will be consistent with other server applications
If you download it from the Apache Web site, you have to compile it and install it
Starting Apache By default, Apache does not start after
you install it The following table has a list of commands
Procedure Command Start Apache apachectl start
Stop Apache apachectl stop
Restart Apache apachectl restart
Minimal Apache Configuration Add a ServerName in
/etc/httpd/conf/httpd.conf Add apachectl start to
/etc/rc.d/rc.local
Default Web Site Properties in IIS
Tabs on the Default Web Site Properties Dialog Box Operators (Windows 2000) only
This property lists users who can administer Web site
Performance Limit bandwidth by Web site Limit simultaneous connections (Windows 2003)
ISAPI Filters Specify applications that process HTTP requests
Tabs on the Default Web Site Properties Dialog Box Home Directory
Specifies the location and properties of the root
Log information here Permissions
Documents Configure the name for default Web pages
HTTP Headers Add your own custom headers
Custom Errors Create custom pages for HTTP errors
Apache Properties-Global Environment ServerRoot
Directory location of server files KeepAlive
Indicates whether Apache should maintain a persistent connection
Listen Determines the port number for the
server Default is 80
Apache Properties-Main Server Configuration User
Shows the user name that Apache employs when someone requests a Web page
The default is apache ServerAdmin
E-mail address of administrator ServerName
DNS host name or IP address of server DocumentRoot
Directory where the Web pages are stored
Hosting Multiple Web Sitesby Port Number Associate each new Web site with a
port above 1023 To retrieve a Web page from a site at
port 8080 www.technowidgets.com:8080/prod.htm
Because it requires a user to add the port number, it is not a popular method
Hosting Multiple Web Sitesby IP Address You can create multiple IP addresses on
a single NIC Referred to as virtual IP addresses
Useful for flexibility because if each domain has its own unique IP address, you can easily move the domain to a different Web server
It is getting more expensive to get multiple IP addresses from an ISP
Hosting Multiple Web Sitesby Host Name
Multiple host names can be associated with a single IP address
Getting a single IP address from your ISP is relatively inexpensive
You can host an almost unlimited number of domains with a single IP address
It is the most common method of hosting
Configuring a Virtual Host Based on an IP Address in Apache In /etc/rc.d/rc.local, add an IP
address such as: /bin/ifconfig eth0:0 192.168.0.150
In the Virtual Host section of httpd.conf
<VirtualHost 192.168.0.150>ServerName research.technowidgets.comDocumentRoot /var/www/research</VirtualHost>
Configuring a Virtual Host Based on a Host Name in Apache NameVirtualHost defines the common IP address Multiple configurations repeat the same IP
address and define unique ServerName settingsNameVirtualHost 192.168.0.100 <VirtualHost 192.168.0.100>ServerName www.technowidgets.com
DocumentRoot /var/www/html</VirtualHost> <VirtualHost 192.168.0.100>ServerName web1.technowidgets.comDocumentRoot /var/www/web1</VirtualHost>
Configuring a Virtual Directory in Apache The following associates the virtual
directory called prod with the location of the directory
Alias /prod/ “/var/www/prod/” Then it configures the directory<Directory “/var/www/prod”>
AllowOverride None Order allow, deny Allow from all
</Directory>
Summary Web servers use HTTP to send HTML
documents IIS is from Microsoft while Apache is
from Apache Software Foundation IIS modifications are made through
property pages Apache modifications are typically
made by changing /etc/httpd/conf/httpd.conf
Summary You can create multiple Web sites
on a single computer by adding port numbers, IP addresses, and/or host names
Virtual directories are directories that appear to be located beneath the root, yet are physically located elsewhere