290 likes | 491 Views
Web Server Administration. Chapter 6 Configuring 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.
E N D
Web Server Administration Chapter 6 Configuring 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.1 Host: 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 OK Server: Microsoft-IIS/5.0 Content-Type: text/html Last-Modified: Fri, 17 May 2005 18:21:25 GMT Content-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
Minimal Apache Configuration • Add a ServerName in /etc/httpd/conf/httpd.conf • Add apachectl start to /etc/rc.d/rc.local
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 settings NameVirtualHost 192.168.0.100 <VirtualHost 192.168.0.100> ServerName www.technowidgets.comDocumentRoot /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