Free Hosting for Your Website

HostForFree Free Webhosting

Hostforfree is one the best free hosting company that offers quality support to all of their customer's despite to their type, free or paid. It has a great user interface that helps to set up your site more easily and quickly. They are popular as a free hosting service provider where you can host your site within 30 seconds. They are running a quality service and providing the same quality of service in both free and paid service. Their network will be up and running at least 99.9% of the time (excluding scheduled maintenance work).This product can help to increase the security of your site, it offers security and quality to their users, whereby mitigate security problem. Don't ignore them as they provide free service. Some of their services is better than paid hosting service. They remain updated with many themes and tools. They offer many different services in their free hosting plan. In a very small period of time, they became a well-known free hosting service provider.

HostForFree Free Webhosting Summary

Rating:

4.6 stars out of 11 votes

Contents: Webhosting
Price: $97.00

HostForFree Free Webhosting Review

Highly Recommended

Maintaining your trust is number one. Therefore I try to provide as much reliable information as possible.

I highly recommend you to consider HostForFree Free Webhosting as your first choice.

Read full review...

Download Now

Get the best value when you Worlds 1 Web Host

1& 1 is both the world's biggest web host, and the fastest growing. Our global community is over 7 million people strong. We are financially stable, profitable, and look forward to hosting your website for many years to come. Sign up for one of our Web Hosting packages and receive up to 5 domain names FREE You don't need an extra registrar Other companies promise affordable web hosting, but then charge extra for setup fees, higher renewal rates, or promotional services. With 1& 1, the listed price is the number you'll pay, and you can expect a fully loaded, comprehensive suite of web services.

Web Server Compatibility

Let's start with the Web since it seems to be getting the most press lately. Web servers are relatively simple. They take text files (HTML files) and transfer them using the HTTP protocol. These text files tell the Internet browser how to display a page and where to download the graphics, sounds, programs, and other files needed to render the page. The three most popular Web servers are Apache, Internet Information Server (IIS), and Netscape, which together make up about 85 of the server market. Apache is a free, open source Web server that, although there is a Windows version available, is run primarily on UNIX platforms such as Linux. IIS is included with Windows NT and 2000 Server and is available only for Windows. Netscape is available in versions for Windows and most flavors of UNIX, including Linux. Since most Web standards are set by the Internet Engineering Task Force (IETF), Web servers tend to look the same to end-users. The two main problems of compatibility tend to be in...

The Apache Web Server 121 Files

The web server files are located in the following directories (and their subdirectories) srv www httpd Documents the web server provides (including all accompanying files) The central configuration file for the web server is etc httpd httpd.conf. For this to be started automatically when the computer is booted, the command The web server can also be started manually the command rcapache (or etc init.d apache) has the following parameters start, stop, status, restart, and reload. On start-up, it is useful to be able to track the messages in the log files. This can best be done in another window with

Installing from a Web Server

You can now set up a Novell client installation from any web server by completing the following 1. Copy the complete winnt or win95 directory structure to the desired location on the web server. This structure is created when you extract the Novell Client files from the ZIP file downloaded from http download.novell.com. You can place the files on up to five web servers in order to provide faster access. 2. From a Windows workstation, run writeip.exe. Using the WriteIP utility, you can create a small executable called setupip that downloads the Novell client install files from a web server IP address and launches the Novell client install routine. There are versions for both Windows 9x and Windows XP 2000, and for all supported Novell Client languages Specify the IP address(es) or DNS name(s) of the web server(s) that host the Novell client files, and the full path to the client files, for example, http www.quills.com nwclient. Web servers will be checked in the order listed until a...

Name Based Virtual Web Servers

This method allows a computer with only one IP address to host many virtual web servers. The HTTP 1.1 protocol allows the web server to state by which names it wishes to be accessed. The great advantage of this method is that a practically unlimited number of servers can run on one computer and, furthermore, it simplifies configuration and use. The main disadvantage is that the client must support this part of the protocol. New browsers do this, but there are still older versions in use that do not. The configuration of virtual web servers is achieved by means of the keyword NameVirtualHost. For example, the two virtual web servers www.universe.dom and www.cosmos.dom are defined for the IP address 192.168.0.50. Both names must be entered in the DNS server for the IP address. The definition is as follows If individual log files are defined for each virtual web server, the necessary directories and files need to be created first. They are not created automatically when Apache starts.

The Apache Web Server

With respect to web servers the situation is slightly worse. IPv6 support has been considered a major change in the Apache community as a consequence, only Apache version 2 has IPv6 support in the main source tree. There have been sporadic patch sets available for some versions of Apache 1.x, but at least in an untrusted environment they are no real option. Dealing with IPv4-mapped IPv6 addresses is still unsatisfying There is a compile-time . configure option enable-v4-mapped which controls the handling of mapped addresses at compile time. Depending on the particular binary distribution this may have been set during compilation or not. If it was set, then we can control IPv4 and IPv6 support independently using multiple Listen directives. Otherwise we are stuck as with xinetd on page 84. Again, we have three options If we use explicit Listen directives for addresses individually, then we will run into problems during network renumberings. If we use a Deny from ffff 0 0 96 directive,...

Configure an Apache Web Server

The Apache web server is the leading web server software. Apache was developed as open source software and is shipped with SLES 9. To set up an internal Apache web server, you need to know the following The Basic Functionality of a Web Server How to Install and Set Up a Basic Apache Web Server How to Limit Access to the Web Server

The Basic Functionality of a Web Server

A web server delivers data that is requested by a web browser. The data can have different formats such as HTML files, image files, Flash animations, or sound files. Web browsers and web servers communicate using HTTP (Hyper Text Transfer Protocol). The following diagram shows the relationship between the browser, server, and HTTP In addition to delivering data to the web browser, a web server can perform tasks such as limiting access to specific web sites, logging access to a file, and encrypting the connection between a server and browser.

Start and Test the Web Server

After installing the required software, you need to start the web server. Do this as the root user by entering the following As with all services, enter the following to stop the web server If you want the web server to start up at boot time, you need to enter the following To test whether the web server is properly installed, open a web browser and enter the following address If you can see this, it means that the installation of the Apache web server software on this system was successful. You may now add content to this directory and replace this page. This page is here because the site administrator has changed the configuration of this web server. Please contact the person responsible for maintaining this server with questions. The Apache Software Foundation, which wrote the web server software this site administrator is using, has nothing to do with maintaining this site and cannot help resolve configuration issues, You are free to use the image below on an Apache-powered web...

Locate the Document Root of the Web Server

This directory is also called the DocumentRoot of the web server. After the installation, it contains the Apache example pages, which are displayed above. You can replace the data in the DocumentRoot directory to display your own web server content. Because the web server runs with the user id wwwrun, you have to make sure that this user has read access to files in the DocumentRoot directory.

Web servers and Web browsers

The Web server serves up the Web pages, and the Web browser downloads them and displays them to the user. That's pretty much the story with these two cooperating software packages that make the Web work. In a typical scenario, the user sits in front of a computer that's connected to the Internet and runs a Web browser. When the user clicks a link or types a URL into the Web browser, the browser connects to the Web server and requests a document from the server. The Web server sends the document (usually in HTML format) and ends the connection. The Web browser interprets and displays the HTML document with text, graphics, and multimedia (if applicable). Figure 9-2 illustrates this typical scenario of a user browsing the Web. Web Server The Web browser requests documents, and the Web server sends them. Web server sends back the requested Web page Web Server Web server sends back the requested Web page The Web browser requests documents, and the Web server sends them. The Web browser's...

Allowing Remote Access To A Local Ssl Or Tls Web Server

Both the OpenSSL included with Linux and commercial SSL support packages are available for the Apache web server. See http www.apache.org for more information. The next two rules allow incoming access to your web server using the SSL or TLS protocols Publicly accessible web server proxies are most common at ISPs. As a customer, you configure your browser to use a remote proxy service. Web proxies are often accessed through one of two unprivileged ports assigned for this purpose, ports 8008 or 8080, as defined by the ISP. In return, you get faster web page access when the pages are already cached locally at your ISP's server and the relative anonymity of proxied access to remote sites. Your connections are not direct, but instead they are done on your behalf by your ISP's proxy. Table 4.10 lists the complete client server connection protocol for the web proxy service.

Setting Up the Apache Web Server

You probably already know how it feels to use the Web, but you may not know how to set up a Web server so that you, too, can provide information to the world through Web pages. To become an information provider on the Web, you have to run a Web server on your Linux PC on the Internet. You also have to prepare the Web pages for your website a task that may be more demanding than the Web server setup. Web servers provide information using HTTP. Web servers are also known as HTTP daemons (because continuously running server processes are called daemons in UNIX) or HTTPD for short. The Web server program is usually named httpd. Among the available Web servers, the Apache Web server is the most popular. The Apache Web server started out as an improved version of the NCSA HTTPD server but soon grew into a separate development effort. Like NCSA HTTPD, the Apache server is developed and maintained by a team of collaborators. Apache is freely available over the Internet. The following sections...

Implementing a Simple Web Server

In the web_server.c example, the function main opens up a socket for listening for service requests in the usual way. web_server.c checks the error codes for all system calls these checks are left out in the following short description of how the Web server works. The following code is similar to the server socket setup code in the example server.c

Installing the Apache Web Server

Installing Linux from this book's companion DVD-ROM gives you the option to install the Apache Web server. As described in Chapter 2, simply select the Web Server package group when you are prompted for the components to install. This package group includes the Apache Web server. The Web server program is called httpd, so the Apache Web server package is called httpd. Perform these steps to verify that the Apache Web server software is installed on your system 2. Type the following command to check whether or not the httpd process is running (httpd is the name of the Apache Web server program) If the Apache Web server is running, the output should show a number of httpd processes. It is common to run several Web server processes one parent and several child processes so that several HTTP requests can be handled efficiently by assigning each request to an httpd process. If there is no httpd process, log in as root and start the httpd service with the following command service httpd...

Configuring the Apache Web Server

The Apache Web server software uses these files and directories The Web server program httpd is installed in the usr sbin directory. The Apache Web server configuration file httpd.conf is located in the etc httpd conf directory. The configuration file is a text file with directives that specify various aspects of the Web server (a later section describes the Apache directives). The Apache Web server treats files with a .conf extension in the etc httpd conf.d directory as configuration files for Apache modules such as mod_perl, mod_python, mod_ssl, and so on. For example, the etc httpd conf.d directory contains the configuration information that SSL needs. The Apache Web server is set up to serve the HTML documents from the var www html directory. Therefore, you should place your Web pages in this directory. If you have any Common Gateway Interface (CGI) programs programs the Web server can invoke to access other files and databases you should place these in the var www cgi-bin...

HTTPD Apache2 Web Server

Apache is the most commonly used Web Server on Linux systems. Web Servers are used to serve Web Pages requested by client computers. Clients typically request and view Web Pages using Web Browser applications such as Firefox, Opera, or Mozilla. Users enter a Uniform Resource Locator (URL) to point to a Web server by means of its Fully Qualified Domain Name (FQDN) and a path to the required resource. For example, to view the home page of the Ubuntu Web site1 a user will enter only the FQDN. To request specific information about paid support2, a user will enter the FQDN followed by a path. Apache Web Servers are often used in combination with the MySQL database engine, the HyperText Preprocessor (PHP) scripting language, and other popular scripting languages such as Python and Perl. This configuration is termed LAMP (Linux, Apache, MySQL and Perl Python PHP) and forms a powerful and robust platform for the development and deployment of Web-based applications.

Red Hat Web Servers Apache and

Red Hat provides several Web servers for use on your system. The primary Web server is Apache, which has almost become the standard Web server for Linux. It is a very powerful, stable, and fairly easy to configure system. Tux is smaller, but very fast, and can handle Web data that does not change with great efficiency. Red Hat provides default configurations for the Web servers, making them usable as soon as they are installed. Tux is a static content Web server designed to be run very fast from within the Linux kernel. In effect it runs in kernel space, making response times much faster than standard user-space Web servers like Apache. As a kernel-space server, Tux can handle static content such as images very efficiently. At the same time it can coordinate with a user-space Web server, like Apache, to provide the dynamic content, like CGI programs. Tux can even make use of a cache to hold previously generated dynamic content, using it as if it were static. The ability to coordinate...

Alternate Web Servers

Other Web servers available for Linux include the Stronghold Enterprise Server and the Apache-SSL server. A listing is provided here. Apache-SSL (www.apache-ssl.org) is an encrypting Web server based on Apache and OpenSSL (www.openssl.org). lighthttpd (www.lighttpd.net ) is a small, very fast, Web server, included with Fedora. Sun Java System Web server (www.sun.com) features Java development support and security. Zope application server (www.zope.org) is an open source Web server with integrated security, Web-based administration and development, and database interface features. It was developed by the Zope Corporation, which also developed the Python programming language. commercial version of the Apache Web server featuring improved security and administration tools. You can also use the original NCSA Web server, though it is no longer under development and is not supported (hoohoo.ncsa.uiuc.edu).

Starting and Stopping the Web Server

On most systems, Apache is installed as a stand-alone server, continually running. As noted in Chapter 21, in the discussion of init scripts, your system automatically starts up the Web server daemon, invoking it whenever you start your system. A service script for the Web Apache Web server manual Directory for Apache Web server configuration files Apache Web server configuration file Service script for Web server daemon Red Hat and Fedora configuration options for Web server daemon, as used by the httpd service script Location of the Apache Web server program file and utilities Apache Web server documentation Table 23-2 Apache Web Server Files and Directories (RPM Installation) Table 23-2 Apache Web Server Files and Directories (RPM Installation) server called httpd is in the etc rc.d init.d directory. Symbolic links through which this script is run are located in corresponding runlevel directories. You will usually find the S85httpd link to etc rc.d init.d httpd in the runlevel 3...

About the Apache Web Server

Apache is the most widely used web server on the Internet today, according to a Netcraft survey of active websites in June 2007, which is shown in Table 17.1. The name Apache appeared during the early development of the software because it was a patchy server, made up of patches for the freely available source code of the NCSA HTTPd web server. For a while after the NCSA HTTPd project was discontinued, a number of people wrote a variety of patches for the code, to either fix bugs or add features they wanted. A lot of this code was floating around and people were freely sharing it, but it was completely unmanaged. About the Apache Web Server Virtual Hosting Other Web Servers for Use with Ubuntu

Web Server NumberPercentage

Lighttpd 1,470,930 1.21 *All web server products There has been a surge of interest in the Apache project over the past several years, partially buoyed by a new interest in open source on the part of enterprise-level information services. It's also due in part to crippling security flaws found in Microsoft's Internet Information Services (IIS) the existence of malicious web task exploits and operating system and networking vulnerabilities to the now-infamous Code Red, Blaster, and Nimda worms. IBM made an early commitment to support and use Apache as the basis for its web offerings and has dedicated substantial resources to the project because it makes more sense to use an established, proven web server. In mid-1999, The Apache Software Foundation was incorporated as a nonprofit company. A board of directors, who are elected on an annual basis by the ASF members, oversees the company. This company provides a foundation for several open-source software development projects, including...

Virtual Hosting on Apache

Virtual hosting allows the Apache Web server to host multiple Web sites as part of its own. In effect, the server can act as several servers, each hosted Web site appearing separate to outside users. Apache supports both IP address-based and name-based virtual hosting. IP address-based virtual hosts use valid registered IP addresses, whereas name-based virtual hosts use fully qualified domain addresses. These domain addresses are provided by the host header from the requesting browser. The server can then determine the correct virtual host to use on the basis of the domain name alone. Note that SSL servers require IP virtual hosting. See httpd.apache.org for more information.

IPBased Virtual Hosting

In the IP address-based virtual hosting method, your server must have a different IP address for each virtual host. The IP address you use is already set up to reference your system. Network system administration operations can set up your machine to support several IP addresses. Your machine could have separate physical network connections for each one, or a particular connection could be configured to listen for several IP addresses at once. In effect, any of the IP addresses can access your system.

Name Based Virtual Hosting

With IP-based virtual hosting, you are limited to the number of IP addresses your system supports. With name-based virtual hosting, you can support any number of virtual hosts using no additional IP addresses. With only a single IP address for your machine, you can still support an unlimited number of virtual hosts. Such a capability is made possible by the HTTP 1.1 protocol, which lets a server identify the name by which it is being accessed. This method requires the client, the remote user, to use a browser that supports the HTTP 1.1 protocol, as current browsers do (though older ones may not). A browser using such a protocol can send a host header specifying the particular host to use on a machine. If your system has only one IP address, implementing virtual hosts prevents access to your main server with that address. You could no longer use your main server as a Web server directly you could use it only indirectly to manage your virtual hosts. You could configure a virtual host to...

Dynamic Virtual Hosting

If you have implemented many virtual hosts that have the same configuration on your server, you can use a technique called dynamic virtual hosting to have these virtual hosts generated dynamically. The code for implementing your virtual hosts becomes much smaller, and as a result, your server accesses them faster. Adding yet more virtual hosts becomes a simple matter of creating appropriate directories and adding entries for them in the DNS server. To make dynamic virtual hosting work, the server uses commands in the mod_vhost_ alias module (supported in Apache versions 1.3.6 and up) to rewrite both the server name and the document root to those of the appropriate virtual server (for older Apache versions before 1.3.6, you use the mod_rewrite module). Dynamic virtual hosting can be either name-based or IP-based. In either case, you have to set the UseCanonicalName directive in such a way as to allow the server to use the virtual hostname instead of the server's own name. For...

Web Server Security SSL

Web server security deals with two different tasks protecting your Web server from unauthorized access, and providing security for transactions carried out between a Web browser client and your Web server. To protect your server from unauthorized access, you use a proxy server such as Squid. Squid is a GNU proxy server often used with Apache on Linux systems. (See Chapter 24 for a detailed explanation of the Squid server.) Apache itself has several modules that provide security capabilities. These include mod_access for mandatory controls mod_auth, mod_auth_db, mod_auth_digest, and mod_auth_dbm, which provide authentication support and mod_auth_anon for anonymous FTP-like logging (see previous sections on access control and authentication). To secure transmissions, you need to perform three tasks. You have to verify identities, check the integrity of the data, and ensure the privacy of the transmission. To verify the identities of the hosts participating in the transmission, you...

Web Server Acceleration Reverse Proxy Cache

Though Squid caches can enhance access by clients to a Web server, Squid can also reduce the load on a Web server. Web servers that become overwhelmed by requests can move their cachable pages to a Squid proxy server that can serve as a kind of alternate site, handling requests for those pages. In effect, the Web server becomes accelerated. Such a cache is known as a reverse proxy cache, focusing on the server instead of the client. A reverse proxy cache will intercept requests to a server, processing any for its cached pages. Only requests for noncached pages are forwarded to the original Web server. If your Squid proxy server and the Web server are operating on the same host, you need to specify the port that the Web server is using. This cannot be the same port as Squid is using. You use the cache_peer directive with the port option to specify the server port. You then specify the address of the Web server with the cache_peer directive and the originserver option. In the following...

Public Web Server In The Dmz The Choke Lan And Remote Hosts As Clients

In this example, the site hosts a public web server in the DMZ. The gateway is a bidirectional conduit, allowing public access to the local server, as well as continuing to allow local access to remote sites using the rules presented in the preceding section. These rules apply to the gateway and would require a predefined constant of DMZ WEB SERVER

Other Web Servers for Use with Ubuntu

To determine the best web server for your use, consider the needs of the website you manage. Does it need heavy security (for e-commerce), multimedia (music, video, and pictures), or the capability to download files easily How much are you willing to spend for the software Do you need software that is easy to maintain and troubleshoot or that includes tech support The answers to these questions might steer you to something other than Apache. The following sections list some of the more popular alternatives to using Apache as your web server.

Apache Web Server Management

This chapter covers the configuration and management of the Apache web server. The chapter includes an overview of some of the major components of the server and discussions of text-based and graphical server configuration. You will see how to start, stop, and restart Apache using the command line. The chapter begins with some introductory information about this popular server and then shows you how to install, configure, and start using Apache. About the Apache Web Server Virtual Hosting Other Web Servers for Use with Ubuntu

Restarting your Web server

By now you've probably noticed that your Web server requires you to enter your certificate password every time it is started. This is to prevent someone from breaking into your server and stealing your private key. Should this happen, you are safe in the knowledge that the private key is a jumbled mess. The cracker will not be able to make use of it. Without such protection, a cracker could get your private key and easily masquerade as you, appearing to be legitimate in all cases. If you just cannot stand having to enter a password every time your Web server starts, and are willing to accept the increased risk, you can remove the password encryption on your private key. Simply do the following

Setting up a Web Server

When we want to publish web pages on the Internet (or on an intranet), we use a web server. In essence, a web server is an application that does two things For example, when you use a web browser to browse http www.wrox.com, the browser turns this into a request message and sends it across the Internet to Wrox's own web server. When the web server receives this request, it processes it, works out what page you requested, puts that page together from whatever resources are necessary, and sends the page back to your browser, in the form of a response message. Of course, there are many different web browsers in existence (including Mozilla, Opera, Internet Explorer, and others), and there are also a great many types of web server software. To enable a browser to request pages from a web server, they communicate using Hypertext Transfer Protocol (HTTP) - this is the standard protocol for the Internet. The request and response messages are composed using HTTP, and this is what allows any...

Install a Basic Apache Web Server

To set up a basic Apache web server, you need to do the following Start and Test the Web Server Locate the DocumentRoot of the Web Server To run a basic Apache web server, you need to install the following packages with YaST apache2. The basic web server software. apache2-prefork. An additional Apache package that influences the multiprocessing behavior of the web server. Start and Test the Web Server After installing the required software, you need to start the web server. Do this as the root user by entering the following As with all services, enter the following to stop the web server If you want the web server to start up at boot time, you need to enter the following To test whether the web server is properly installed, open a web browser and enter the following address If your SUSE Linux Enterprise Server 10 is connected to a network, you (and other hosts on the network) can remotely access the web server by entering the following Locate the DocumentRoot of the Web Server This...

Configuring your Web Server

It's a good idea to configure your web server. Red Hat does provide a GUI tool, apacheconf, for configuring Apache, but it does not format the configuration file very well. Webmin (http www.webmin.com - see Chapter 13) is an alternative web-based software that can be used to manage most of the Linux services, including the Apache web server. However, in this section we'll show you how to do some basic configuration by editing the httpd.conf Apache configuration file directly. Try it Out Configuring Your Web Server We're going to configure the web server by adjusting a couple of the settings to suit our needs. Now browse to http localhost again, to check that the web server is still serving web pages. You should see the Apache Test Page that we saw earlier in this section. There are many configuration settings that you can control via the httpd.conf configuration file. For more information, refer to the Apache web server documentation at http httpd.apache.org docs-2.0A

Setting Up a Web Site with the Apache Web Server

It is from this, the NCSA HTTPd Web Server, that the Apache web server can find its own roots because in 1995 Brian Behlendorf started collecting software patches that various web server administrators had applied to the last version of HTTPd. These initial series of patches, traded on a mailing list between eight individuals, formed the basis of a patchy web server that in April of 1995 saw the first public release in a beta version labeled version 0.6.2. By the end of December, they had the first stable version of Apache, and within a year it had surpassed NCSA HTTPd web server software as the most used web server on the Internet. Since then, the Apache web server has been adopted by companies such as Yahoo and Amazon as the software to run their web sites, providing the core business operations to customers around the world. Companies such as IBM, Sun, and SUSE have developed products and services that use and cater to users of the Apache web server, a multi-million-dollar segment...

Scroll down to the Servers section and check the Web Server box see Figure 424

If you plan on incorporating other programs (like PHP or PostgreSQL) into your Web server, you can save time by adding them now. Click the Details button to the right of the Web Server entry to view the package contents. Check the boxes next to any additional packages you'd like to add. When you're finished, click the Close button to return to the Package Management window. R1 Web Server These tools allow you to run a Web server on the system.

Understanding How a Web Server Works

From a technical perspective, you could say that a web server is just a special kind of file server all a web server does is hand out files to users that are stored in a directory structure, which is called the document root. To offer these files, a web server uses a certain file format. This format is the Hypertext Markup Language (HTML). HTML files, however, are not the only files that a web server can offer. A web server can offer other types of files as well. Therefore, a web server is a good source for streaming audio and video, accessing databases, displaying animations, showing photos, and much more. Originally, web content was static. Ever since a few years ago, however, web servers became a platform where people work together to create some content. One of the best examples of this is Wikipedia, the online encyclopedia where people from all over the world work together to create content. However, I won't cover interactive web pages in this chapter in fact, this subject...

W Misconfigured Web Servers

A web server that isn't configured securely can leak large amounts of information and can leave your web server vulnerable to various attacks. Default web server configurations generally have a number of insecure settings. By default, Apache is a relatively secure web server however, it still requires a little tweaking when used for production purposes. This is especially the case when Apache is distributed within a preconfigured Linux distribution like Debian. Default files and directories include the Apache manual pages, the icons and icons small directories, the cgi-bin directory, readme files, and welcome pages. These allow the attacker to gather information other than what is placed on the Internet for production purposes, possibly allowing him or her to determine the web server type, version, and configuration. Default web server configurations may also allow directory listings to take place, enabling the web server directory structure to be enumerated and additional default...

Objective 2 Enable a Web Server Apache

Web servers play a critical role in delivering content over the Internet. Each web page you see in your browser is delivered from a web server installed on a host computer that stores the page and its objects. Apache is the standard web server in SUSE LINUX Enterprise Server. To enable the Apache web server on SLES 9, you need to know the following How a Web Server Works TFor examples of web documents you can use with Apache web server, install the package apache2-example-pages and see the documents available in srv www htdocs .

How a Web Server Labels Content Types

Web servers were developed to deliver simple HTML documents and images to a client (such as a web browser). However, web servers can now deliver more than HTML pages. To correctly identify and display other types of documents, a web browser relies on a Multipurpose Internet Mail Extension (MIME) header sent by the web server. For example, more than 360 MIME types are included with the Apache web server in the MIME.TYPES configuration file. The configuration file also includes variations on file extensions (such as MPEG, MPG, or MPE for files containing MPEG video content).

How a Web Server Delivers Content

A web server works in a client-server relationship with a client program, such as a web browser. The clients are usually web browsers, like Konqueror or Mozilla. The client program requests information (such as an HTML page), and the web server program supplies it. Commands and data are passed as plain text to port 80 (the default web server port) through a TCP connection. Web browsers submit HTTP requests web servers use HTTP to respond by sending the requested file through port 80.

Building a Web Server

The web server of choice for so much of the open source community is Apache. Currently at version 2, this project originated in 1992 and was called a patchy web server, because of its ad hoc development processes in the early years. It has since flourished into one of the most-used pieces of software in the world, running about 50 percent of all web sites on the Internet. Other distributions are similarly named. Once it's installed, you can point your browser to localhost where you should see the congratulations web page, stored by default in var www, thus proving the web server works. You can then test the scripting module by creating a page called test. php containing the following In the very unlikely event of these not working, a log is kept in var log apache2 error.log. A lot of important traffic relies on a working web server, so it is worth the time to ensure it's stable.

Allowing external Web browsers access to a Web server on your firewall

Running a Web server on a firewall is not a good idea but might be necessary (resource wise) for a SOHO. In such case, you want to do the following Create a rule that allows the firewall Web server to respond to unprivileged ports (which Web clients use for client-side connection) when source IP address is any IP and source port is HTTP (80).

Hosting The Maps On A Web Server

After creating your maps, you need to post them on a web server in order for your maps and iPrint to work properly. This web server can be a new or existing web server, or it can be the OES server itself. To use a new or existing web server, copy the contents of the var opt novell iprint htdocs directory and its subdirectories to the web server directory structure. You can then link to your maps from your company's internal web page or send the URL out to your users.

Installing and Starting the Web Server

The Apache Web server software is usually installed automatically during the system installation, so you shouldn't have to install it manually. I recommend, though, checking to be sure that it is there before you try to start it. You can check for the Web server by entering the following command If the Apache software is installed, the system responds with the name and version number of the installed software. If the Web server is not installed, your query results in the system responding that the server is not installed. You can install the Web server as follows 0 Web Server These tools allow you to run a Web server on the system. 2. Scroll down to the Servers section and mark the Web Server check box. Be sure to click the Details link for the Web server to see whether you need to install any additional Web server tools. For example, if you plan to use a database with your Web server, you want to install the tools for using databases with the Web server. After the Web server software...

Configuring and Managing Your Web Server

Before you place your Web files into the directory, I recommend finding out where all the Apache files are located on your system. Table 15-1 lists the files and directories related to the Apache Web server Table 15-1 Apache Web Server File and Directory Locations The configuration file for the Apache Web server is etc httpd conf httpd. conf. You can manually edit this file to configure the Web server for the performance that you desire. Red Hat Enterprise Linux provides a graphical based tool that can be used to edit the Apache configuration file instead of manually editing it. I find it much faster to directly edit the configuration file, but many people prefer to use their mouse to click icons and then type information into text boxes. In the next section, you use the graphical based tool to edit the etc httpd conf httpd.conf file.

Simple web server running Apache

To set up a simple apache web server was extremely easy under RedHat 6.0. First of all, I made sure to install the apache web server rpm package during my RedHat installation. If you didn't do it, you can put the RH CD in your CDROM now, mount it, and install the package apache-*.rpm (instead of the * the name also contains the version number and the platform). If I know what I want to install, it is simple do it (as root) I should already have the directory home httpd (check if it exists), and under it, the subdirectory html this is the root directory for people accessing my computer from the web ( their root directory means that they will not be able to access any directories above the directory home httpd html on your system). On default, this directory contains some html files and manual that the apache installation program put there. So I should now be able to connect to my web server from another machine on my home network. For example I would type on the Netscape Location line...

Installing Apache Web Server

However, if you chose to perform a custom installation of OES, or are adding OES components to an existing SLES9 server, you may want to install Apache manually. To install Apache Web Server manually through YaST, complete the following steps 4. In the Selection window (left pane of the main window), select Simple Webserver. (You can select the entire category, or just the Apache2 package in the right pane.)

Apache Web Server Configuration

Apache Web Servers are managed through a primary configuration file called httpd.conf and a secondary file called default-server.conf. In addition to these two main configuration files, Apache is also designed to load external service-specific configuration files stored in the etc apache2 conf.d directory, and virtual server configuration files found in the When implementing a custom web server, your configuration changes could be written directly to the global configuration files for Apache. However, rather than directly editing these files, it is usually better to create new configuration files containing only your new configuration. These files can then be stored in the Apache configuration directories and easily removed or edited should the need arise.

Web Server Choices for Performance and Security

In March of 2003, a survey conducted by Netcraft (http news.netcraft.com) of active websites showed that Apache ran on 62.51 percent of the web server computers surveyed. Apache's nearest competitor, Microsoft's Internet Information Services (IIS), ran on 27.44 percent of the server computers. (IIS is not available for Linux.) Thus, it should come as no surprise that discussions of web servers in Linux, including most of this chapter, focus on Apache. Nonetheless, there are alternatives to Apache, and many of them have advantages over Apache. Some servers are smaller and, therefore, consume less RAM some are optimized to serve web pages more quickly than Apache can and some offer features that Apache doesn't offer. Perhaps one of the strongest reasons to use an alternative to Apache is to diversify the Internet's installed base of web servers. When an important infrastructure component, such as web server software, comes to be dominated by just one product, the result is known as a...

Apache httpd Setting Up a Web Server

Apache is the most popular Web server on the Internet today. It is both robust and extensible. The ease with which you can install, configure, and run it in the Linux environment makes it an obvious choice for publishing content on the World Wide Web. The Apache server and related projects are developed and maintained by the Apache Software Foundation (ASF), a notfor-profit corporation formed in June 1999. The ASF grew out of the Apache Group, which was established in 1995 to develop the Apache server.

Introduction to Apache Web Server

All Web servers use a simple protocol known as Hypertext Transfer Protocol (HTTP) to standardize the way requests are received, processed, and sent out again. This allows various clients, called browsers, to interact with a variety of Web servers without dealing with compatibility issues. Having standards in a world where change takes place daily is crucial to the survival of any technology. Web servers are no exception. As far as the Internet goes, Web servers have been around for some time. This particular vision of a better mousetrap developed into the Apache server, as it was born out of a need to repair or patch the Web server called NCSA Web server. Since that time, the Apache server has gone through several revisions to the fine product that it is today. According to a May 2000 survey of over 15 million Web sites, Apache is the winner of Web servers. The number one (Apache) leads the number two (Microsoft-IIS) by almost three times as many servers. This is not surprising...

Settings on a Domino Web server

To change the settings of the Domino Web server, use the following steps Figure 6-1 Web server configuration Figure 6-1 Web server configuration To change the Domino Web server port, click Ports - Internet Ports in the server document. The Web tab should be selected by default. It is best to use the default port 80 for a non-secure Web server and port 443 for a secure Web server. In the Enable Logging section, enable either log files or Domlog.nsf, if you want to create statistics telling you about, for example, who, how much, and which pages were accessed on your Web server. Enabling either type of logging will affect server performance.

Introduction to Web Servers

The Web server usually has a simplerjob to accept HTTP (HyperText Transfer Protocol) requests and send a response to the client. However, this job can get much more complex (as the server can also), executing functions such as Logging any successful accesses, failures, and errors. The Apache Web server The Apache Web server was originally based on HTTPd, a free server from NCSA (the National Center for Supercomputing Applications). At the time, HTTPd was the most common server on the Internet. Unfortunately, the development of the server wasn't keeping up with the needs of Webmasters, and several security problems had been discovered. Many Webmasters had been independently applying their own features and fixes to the NCSA source code. In early 1995, a group of these developers pooled their efforts and created a patchy server, initially just a collection of patches to the HTTPd code. Since then, the Apache Group has largely rewritten the code and created a stable, multiplatform Web...

Starting stopping and refreshing the Domino Web server

There are two ways to start the Domino 6 Web server To stop the Web server, enter the command tell http quit at the server console, or remove HTTP from the ServerTasks in Notes.ini to stop it from starting at the next restart of the Domino server. Type the command tell http restart at the server console to refresh the Web server, and if you made changes in the Domino Directory related to the HTTP configuration.

Other Web servers available for Red Hat Linux

Some other Web servers that can run on Red Hat Linux are described below, with URLs that provide more detailed information. Stronghold 3 This Apache-based Web server from Red Hat features 128-bit SSL encryption and a digital certificate. According to Netcraft (www.netcraft.com), Stronghold is the top commercial SSL Web server for UNIX systems. For details, see Red Hat's Stronghold page www. redhat. com software apache stronghold.

Quick Starting the Apache Web Server

Here's a quick way to get your Apache Web server going From here, you'll want to customize it to match your needs and your environment (as described in the section that follows). To make the Web server available to your LAN, you can use your IP address instead of new.host.name (for example, ServerName 10.0.0.1). The 80 represents the port number (which is the default). For a public Web server, get a real DNS host name. 6. To make sure that the Web server is working, open Mozilla (or another Web browser) and type the following into the location box and press Enter 7. You should see the Test Page for the Apache Web server, as shown in Figure 21-1. To access this page from another computer, you will need to enter your Apache server's host name or IP address.

Tutorial Virtual Hosting email with Postfix

At this point, if you've performed the configuration in the previous tutorial, you'll be able to accept mail for any number of domains. However, this is not the same as providing independent virtual hosting support with Postfix, because you can only have one user of a given name and mail sent to that user name at any of the domains for which you accept mail will be delivered to that user. So, for example, if you hosted swelltech.com, penguin-feet.org, and nostarch.com on the same server, and mail was sent to user joe at each of those domains, all three mails would end up in the same mailbox. Therefore, you have to introduce another layer to solve this problem. Tutorial Virtual Hosting email with Postfix

Configuring the Web server httpdconf

The httpd.conf file is the primary configuration file for the Apache Web server. It contains options that pertain to the general operation of the server. The default filename ( etc httpd conf httpd.conf) can be overridden by the -f filename command-line argument to the httpd daemon or the ServerConfigFile directive. The following sections list the contents of the httpd.conf file and describe how to use the file.

Configuring virtual hosting

If you have one Web server computer, but more than one domain that you want to serve with that computer, you can set up Apache to do virtual hosting. With virtual hosting, a single IP address can be the access point for multiple domain names. With virtual hosting, when a request comes into your Apache server from a Web browser through a particular IP address on your computer, Apache checks the domain name being requested and displays the content associated with that domain name. As an administrator of a Web server that supports virtual hosting, you must make sure that everything that needs to be configured for that virtual server is set up properly (you must define such things as locations for the Web content, log files, administrative contact, and so on). Virtual hosting is defined with the VirtualHost tags. Information related to virtual hosts in the etc httpd conf httpd.conf file is shown in the following code Use name-based virtual hosting.

Running the Apache Web Server

I Exploring HTTP I Installing the Apache Web server i Configuring the Apache Web server I Supporting virtual hosts with the Apache Web server 7 he World Wide Web (WWW or the We > ) has catapulted the Internet into the mainstream because Web browsers make browsing documents stored on various Internet hosts easy for users. Whether you run a small business or manage computer systems and networks for a large company, chances are good that you have to set up and maintain a Web server. Because it has built-in networking support, a Fedora Core PC makes an affordable Web server. This chapter describes how to configure the Apache Web server on a Fedora Core PC.

Exploring the Apache Web Server

You probably already know how to use the Web, but you may not know how to set up a Web server so you, too, can provide information to the world through Web pages. To become an information provider on the Web, you have to run a Web server on your Fedora Core PC on the Internet. You also have to prepare the Web pages for your Web site a task that may be more demanding than the Web server setup. According to the information about the Apache Web server project on www.apache.org foundation faq.html, the Apache group was formed in March 1995 by a number of people who provided patch files that had been written to fix bugs in NCSA HTTPD 1.3. The result after applying the patches to NCSA HTTPD was what they called a patchy server (that's how the name Apache came about). The Apache Group has now evolved into The Apache Software Foundation (ASF), a nonprofit corporation that was incorporated in Delaware, U.S.A., in June 1999. ASF has a number of other ongoing projects. You can read about these...

Other Web servers available for Fedora and RHEL

Some other Web servers that can run on Fedora and other Red Hat Linux distributions are described in the following list, with URLs that provide more detailed information. lighttpd The lighttpd Web server (http www.lighttpd.net) is built for security, speed, compliance and flexibility. It is particularly optimized for high performance environments because it has a low memory footprint and balances cpu-load. Sites such as YouTube, Wikipedia, and meebo have used lighttpd for some specialty Web applications. tclhttpd TheTclHttpd Web server (tclhttpd package) is created in the Tool Command Language (TCL). Besides acting as a Web server, TclHttpd can also be used as a TCL application server. thttpd The thttpd HTTP server (http acme.com software thttpd) was designed to be simple, small, portable, fast, and secure. Its creators call it a tiny, turbo, throttling HTTP server. It implements little more than the minimum needed to be HTTP 1.1 compliant, so it can run much faster than many larger...

Quickstarting the Apache Web Server

Here's a quick way to get your Apache Web server going. From here, you'll want to customize it to match your needs and your environment (as described in the section that follows). If you don't provide a name for ServerName, the server will do a reverse lookup on your IP address to try to find the name. Failing that, it uses your loopback address (127.0.0.1). The 80 represents the port number (which is the default). For a public Web server, get a real DNS hostname. (Refer to Chapter 25 for information on DNS and making a server public.) No changes are required to this file to make Apache available on the local host. 6. To make sure that the Web server is working, open Firefox (or another Web browser) and type the following into the location box and press Enter 7. You should see the Test Page for the Apache Web server, as shown in Figure 21-1. To access this page from another computer, you will need to enter your Apache server's host name or IP address. Now that your Web server is...

Analyzing Webserver traffic

The output report shows a 12-month summary of Web server activity. On the bar chart, for each month a green bar represents the number of hits on the Web site, the dark blue bar shows the number of different files hit, and the light blue bar shows the number of pages opened. It also shows data for the number of visits and the number of sites that visited in the right column. The amount of data transferred, in kilobytes, is displayed as well. Figure 21-5 shows an example of a webalizer output file for a Web server that has been running for several months.

Favorite Linuxfriendly Web Hosting Company

Given the variety of hosting companies available today, it's no surprise that none of them dominated the voting for Favorite Linux-Friendly Web Hosting Company. Although the winner, GoDaddy.com, garnered a respectable 14.7 , the real winner was Other with a whopping 42.4 . Nevertheless, hats off to GoDaddy.com for its rapid rise in popularity it was absent from our last awards.

Running Web Servers

To many peopls, the World Wide Web (WWW or Web for short) is synonymous with the Internet. In truth, there are Wany othes protocols in use on the Internet, many of which are described iw trj s b ook. The Web has groevn to be orgusbly the most wisib le part of trie Internet, though. For this reason, Web servers are extremely important to many organizations without a Web site, a company or even an individual has very little visibility on the Internet. Linux supports many diffesent Web server options, although one program (Apache) is the most common one. This ernpter therceore focuses on Apache configuration, beg inning with the basic options required to) get Apache up and running. This chapter then moves on to touch upon other topics, such as Linux kernel-based Web server extensions, forms, scripts, secuse sites, and virtual domains. This chapter also covers issues that in some sense come before and acfotnetratchte Web server generating material to serve on the Web site and analyzing...

Enabling Virtual Hosting

As a single server for a home or small business, you may not need to change a Web server much from the default for the one domain. However, when you look at the Internet, one machine publishes Web pages for many domains. This means that somewhere a machine hosts more than that for one domain. The term for this is virtual hosting, or multihomed hosting. In either case, you can configure the server to publish Web pages for more than one domain name. Domain names that are not associated with a real network or machine are considered virtual. There are a couple of methods to make a virtual domain name available on a Web server. The first is to give each virtual domain an IP address in the domain name server (DNS) and assign the IP address to the Linux machine. (You can find more information about adding an IP address to a machine in Chapter 5.) For Internet use, these domain names and IP numbers must be registered and real. Making up names or IP numbers does not work. The other option is...

When to Run a Web Server

Although Aleb servers ire extremely dcsirable in meny situations, they aren't nesded oil all c omputers. Indeed, they Aren't even needed or desirable on all networks. Understanding when to run a Web server will help you to svoid Qroblrms that csn be caused by unnecessary Web servers, as well as minimize the effort and expense you put into running your network. A Web server is a programthat responds to requests that use the Hypbriexi Transfer Protocol (HTTP) to transfer files. Forthis reason, some p eople prefer the term HTTP reiver to Web server Whatever tht name, a Web server listens on a specified port (usually port 80) for incoming requests for data. The HTTP client (more commonly known as a Web owseb), such as Netscape Nahfgator or Internet Explorer, sends it re quest to the Web server for a particular document. The Web server retrieves that document from the hard disk or, in the case of CGI scripts, generates a document, and sends the file to the client. Under certain...

Tip 10 Secure Web server

Electronic commerce is becoming very popular on the Internet. Companies will often pay thousands of dollars for commercial packages to deliver secure content to customers on the Web. You can setup one of the most popular Web servers, Apache, running on Linux and serving secure content, for free. To setup Apache to deliver secure content, you will need to get a cryptographic package called OpenSSL, based on the SSLeay library. The place to start is at http www.apache-ssl.org. From there, you can download the needed patches to make Apache into a secure web server.

Starting Stopping and Testing the Apache Web Server

Like almost all other services you can use on Ubuntu Server, the Apache web server is not installed automatically. The two packages that are available to install Apache are the apache package and the apache2 package. At present, apache2 is more common, and only in specific situations does it make sense to use the older apache package. Use dpkg -l grep apache to check whether Apache has already been installed. If this command doesn't show an Apache server, install it using apt-get install apache2. The most important part of the Apache web server is the Apache 2 daemon (apache2) process. This process is started from the script etc init.d apache2 to run it from the command line, use etc init.d apache2 start. If this command finishes without any errors, your web server is up and running, which you can check with the ps aux grep apache command. As shown in Listing 11-1, this command shows that different instances of the Apache web server are ready and waiting for incoming connections....

Tutorial Virtual Hosting Email with Sendmail

Virtual hosting is a rather broad term applied to many network services to specify that the server in question provides service to two or more network domains with some degree of separation. Specifically, in the case of a mail server, it means that the mail server will deliver to a unique local user based on the user name and the domain in the to field of the received email. For example, an email to joe swelltech.com would be treated differently from an email sent to joe notswelltech.com and would be delivered to a different mailbox.

Managing Access to the Web Server

In most situations, a web server is publicly available so everyone can access all of its offered information. In some situations, though, you might need to add an extra layer of security and protect some directories on your web server. Without using additional modules, Apache offers

A12 Settings in the IP Stack of the Web Server

Servers offering services towards the Internet normally communicate with their communication partners via TCP IP. The IP stack in the Linux kernel is responsible for this communication and looks after the transparent handling of communication for the server services (such as the Apache web server).

Apache Setting Up a Web Server

Apache is the most popular Web server on the Internet. It is both robust and extensible. The ease with which you can install, configure, and run it in the Linux environment makes it an obvious choice for publishing content on the World Wide Web. The Apache server and related projects are developed and maintained by the Apache Software Foundation (ASF), a not-for-profit corporation formed in June 1999. The ASF grew out of the Apache Group, which was established in 1995 to develop the Apache server.

Configure the Nagios Web Server

In order to use the webserver of Nagios, some configuration has to be done. The webserver is designed to use the Apache webserver, on SLES it's Apache version 2. By default, access to the webserver is only allowed from localhost. The configuration file is etc apache2 conf.d nagios.conf In order to facilitate access to the CGI scripts (see below) it is advisable to require user authentication when accessing the Nagios webserver. If security reasons require to limit access to the webserver to special IP addresses, this can be defined as well. Only valid users which are defined in the file etc apache2 nagios are allowed to connect to the Nagios webserver. You create this file with the command htpasswd2 The directory usr lib nagios cgi contains a collection of CGI scripts which are used to access the Nagios webserver and to display the status of the services and hosts monitored by Nagios. By default, access to these CGI scripts is denied for everybody. You have to allow access to the...

The Simple Web Server web80

This very simple Web server is designed to operate two ways example Listing 17,5 web8Q.c The Simple Web Server Module web8Q.c 3 * This is an extremely simple Web server 11 * as a very simple standalone Web server. 31 int s * Web Server socket * 34 struct sockaddr_in a_web * Web Server * 66 * Bind the Web server address- 102 * Perform a simple, Web server loop for 131 * This includes this Web server's The very simple Web server in Listing 17.5 uses the following basic procedure 4. The for loop allows for a continuous number of client connections to take place to this Web server (line 108). Note in lines 144 to 147 that the process ID of the Web server is reported back to the browser so that you can have confirmation of where this information came from.

Introduction to Web Servers and Apache

As mentioned in the previous section, the flip side of a Web browser is the Web server, the application that actually locates and delivers content from a specified URI to the browser. What does a Web server have to do At the most basic level, it simply has to deliver HTML and other content in response to incoming requests. However, to be useful in a modern Web-oriented environment, a Web server has to do several things. The most important of these are the following The order of importance of these various requirements depends on whether you are a systems administrator or e-commerce merchant, but all modern Web servers must provide at least these capabilities. Many different Web servers are available today, depending on your hardware platform, the software requirements of third-party software that a Web site depends on, your fealty to a particular operating system vendor, and whether or not you are willing to run open source software, get additional power, and save money. As you might...

Using the Apache Web Server

Your Web server is now up and running and allowing requests from the outside world. The default Apache configuration is adequate and correct for most users no need for additional up-front configuration when starting out. The properties of the Web server in its default configuration are as follows Your Web content goes in the var www html directory tree. Note that any files your Web server should deliver must be set to have publicly (all users) readable permissions. Because your Web server is already online if you've followed the steps outlined thus far in this hour, you can begin copying your content to or creating your content in var www html any files you place there from now on will be instantly available to the world.

Objective 3 Configure a Web Server

Your Digital Airlines office runs an internal web server which provides vital information for employees. The server hosts a general portal site and a virtual host for every department. Because the web server needs to be migrated to SLES 9, you decide to create a prototype system for the general portal site and 2 departments (accounting and marketing) on the test server. Install and configure an Apache web server that hosts the general portal site and 2 virtual hosts for the departments accounting and marketing.

Analyzing Web server traffic

The output report shows a 12-month summary of Web server activity. On the bar chart, for each month a green bar represents the number of hits on the Web site, the dark blue bar shows the number of different files hit, and the light blue bar shows the number of pages opened. It also shows data for the number of visits and the number of sites that visited in the right column. The amount of data transferred, in kilobytes, is displayed as well. Figure 21-5 shows an example of a webalizer output file for a Web server that was launched in the past few days.

Performance Tuning Your Web Server

If you are running a busy web server, it makes sense to do some performance tuning. The default settings are for web servers with an average workload. If you are hosting a busy web server, the performance parameters may need some tuning. The file to do this is the etc apache2 server-tuning. conf file. In this file, you can use the following options to tune the performance of your web server StartServers This setting specifies the number of Apache processes that should always be started. The advantage of starting some processes in advance is that they are ready and listening for incoming clients and therefore are capable of replying to incoming connections quickly. By default, five servers are started. If you anticipate your web server will be heavily used, it is a good idea to set this to a greater value. ServerLimit This is the maximum number of clients that Apache allows at the same time. The default is set to 150, which is reasonable for many web servers.

Web Server Options for Linux

Ds with most types of server, there are several WoI, s elvers available for L inux. These server, range from exotic and apecialized programs to generaHst tools. Some programs are small and support just a aiantted set of options others are large packages end aro loaded with features .Some oi the more noteworthy Linux Web server options include the following Apache TOis Web server ships with all major Linux distributions , and is the p ackage that'l installed by default when you a sk for a WoI) server during system instaUation . According to Neteraft (http www.netcraft.com), 65 of the Web's active sites used Apache in Darch of 2002. For these reasons, thie chapter focuses on Apache. This server is quite full-featured and supports the ufuol net oaadvanced options, such as CGI scripts and SSL security. The main Apache Web site is Ottp httpd.apache.orh. Roxen This is a full-featured Web server comparable to Apache in many ways. It features a Web-based configuration interface that may make...

IP Address Based Virtual Web Servers

The disadvantage of name-based virtual web servers is that only browsers that support HTTP 1.1 will recognize these servers. If older browsers should be supported, the virtual servers must be IP address-based. This requires an individual IP address for each of the virtual web servers. Until IPv6 is implemented, available IP addresses will remain in short supply, so the overwhelming majority of virtual web servers are name-based. IP-based virtual web servers can also be installed on a machine with only one network card. Linux allows you to allocate several IP addresses to one network card. These virtual network cards have names like eth0 0, eth0 1, etc. Linux allows an unlimited number of virtual network cards on a single physical network card. To enable this, the kernel must have the IP Aliasing Support parameter built in. All virtual web servers must be registered in the DNS database.

Web Servers

One very popular use of Linux is as a platform for running a Web server. This software uses the Hypertext Transfer Protocol (HTTP) to deliver files to users who request them with a Web client program, more commonly known as a Web browser. The most popular Web server for Linux by far is Apache (http www.apache.org), which is an open source program included with Linux. There are other Linux Web servers available, however, including Roxen and thttpd (http www.acme.com software thttpd). Roxen is a high-powered commercial Web server, whereas thttpd is a minimalist open source program suitable for small Web sites or those that don't need advanced features. Some Linux distributions install Web servers even on workstations because the distributions use the Web servers to deliver help files to the local users. Such a configuration chews up resources, though, and can at least potentially be a security problem.

Webserver

To make information available, a web server must be running on the corresponding computer. The web server responds to requests for documents that are sent to it from a web browser. The contents of the document are transmitted to the web browser, which then displays them on the user's computer. Figure 1.2 Connection to a Web Server Figure 1.2 Connection to a Web Server The first web server was the CERN httpd, which was set up by the two developers of the WWW. In very little time, a number of further web servers sprang up, the most successful being the httpd web server of the NCSA (National Center for Supercomputer Applications), a department of the University of Illinois. This web server was freely available from the outset and ran on many computer platforms, especially on Unix machines. In February 1995, it was the most widely used web server. However, further development at NCSA was stopped and many webmasters added their own developments and improvements. A small group of these...

Linux Web server

Whereas DNS resolves a name to an IP address allowing users to connect to Web pages, a Web server provides the actual Web page. Linux is used throughout the Internet to provide this service. The most popular software that Linux uses to provide Web pages is the Apache Web server. Apache exists to provide commercial-grade software capable of providing HyperText Transfer Protocol, or HTTP, which is a standard for creating documents to be viewed over the Internet. Apache is the leading Internet Web server with over a 60 percent market share, according to the Netcraft survey (www.netcraft.com survey). Apache Web Server powers Web sites over other commercial software at a rate of more than 3 to 1, and will continue to do so because it is a robust, stable, and free alternative to other software. This may be the best example of Linux because the Apache Web server is not only capable but is preferred in the enterprise environment.

Virtual Hosting

Name-based virtual hosting allows a single IP address to serve more than one Web site. This ability is courtesy of HTTP 1.1, which is supported by almost all Web browsers. When a compliant Web browser asks for a page, it will also provide the name of the server it was looking for. The Web server will then use this information to provide content from the appropriate virtual host. There are other ways of providing virtual hosting, but the name-based method is by far the most popular, as it only requires a single IP address for all the virtual sites.

Virtual Web Servers

Using Apache as a web server allows you to have many virtual web servers running on one computer. Depending on the name the web server is addressed with, different pages will be displayed. For this purpose, the relevant entries must be inserted into the Section 3 Virtual Hosts in the configuration file etc httpd httpd.conf. The names of the virtual web servers must be known to the DNS server. Virtual web servers can be implemented in two ways either name-based or IP address-based. Attention As long as virtual Web servers (name-based or IP address-based) are used, the main server should no longer be used, because it will normally not answer any requests.

Apache Web Server

The Apache Web server is currently the most popular Web server. Apache exists to provide commercial-grade software that is capable of providing for the Hypertext Transfer Protocol (HTTP). HTTP is a standard for creating documents to be viewed over the Internet. The standardization of HTTP was started within the IETF (Internet Engineering Task Force) in late 1994 and has evolved into the standard method of displaying Web pages. The linuxconf program can perform a basic configuration on the Apache server. To do this, 1. Choose Networking O Server Tasks O Apache Web Server. 2. When you select the Apache Web server, a menu appears that allows configuration of the Web server.

Web server

Naturally, if you're going to serve up Web pages, you need a Web server. As long as the Web server supports PHP 4.0 or later, you're good. In this chapter we cover two platforms Apache on Linux, and Internet Information Services for Windows. Apache and IIS are by far the most widely used Web-server software packages on the Internet, with a combined market share of over 88 percent (according to a January 2004 Netcraft survey). For more information on other Web servers that support PHP, consult the PHP documentation at www.php.net.

Web Server Security

Web servers are vulnerable to all of the normal security problems that are discussed in Chapter 12, Security. But they also have their own special security considerations. In addition to all of the normal threats, such as network break-ins and denial of service attacks, web servers are responsible for protecting the integrity of the information disseminated by the server and for protecting the information sent by the client to the server. One of the unique security risks for a web server is having an intruder change the information on the web pages. We have all heard of high-profile incidents when intruders get in and change the home page of some government agency, inserting comical or pornographic material. These attacks are not intended to do long-term harm to the server, but they are intended to embarrass the organization that runs the website.

Embedded Web Servers

Another approach to network programming is to embedded a web server in your device. This makes it accessible, in principle, from a web browser anywhere on the Internet. This is not the place to delve into web programming but it's worth taking a look at, because BlueCat includes a demo called showcase that incorporates an Apache web server.

Web Servers Apache

Linux distributions provide several Web servers for use on your system. The primary Web server is Apache, which has almost become the standard Web server for Red Hat Linux and Fedora distributions. It is a very powerful, stable, and fairly easy-to-configure system. Other Web servers are also available, such as Tux. Tux is smaller, but very fast, and is very efficient at handling Web data that does not change. Red Hat and Fedora Linux provide default configurations for the Web servers, making them usable as soon as they are installed. Tux, the Red Hat Content Accelerator, is a static-content Web server designed to be run very fast from within the Linux kernel. In effect, it runs in kernel space, making response times much faster than standard user-space Web servers like Apache. As a kernel-space server, Tux can handle static content such as images very efficiently. At the same time, it can coordinate with a user-space Web server, like Apache, to provide the dynamic content, like CGI...

How Web Servers Work

To understand Apache, its configuration, and how to fine-tune it for your own environment, you should understand how Web servers work in general. Otherwise, lacking this context, Apache's behavior and configuration might seem arbitrary. Figure 15-1 shows the general process that takes place when a Web browser requests a page and the Apache Web server responds. Web Client Web Server Web Client Web Server

Sun ONE Web Server

Despite the Netcraft numbers shown previously in Table 17.1, there is evidence that the Sun Java System Web Server (formerly known as the iPlanet Web Server, and subsequently Sun ONE Web Server) might be even more popular than Apache in strictly corporate arenas. The server got its start as the Netscape Enterprise Server one of the first powerful web servers ever to hit the market. Sun ONE Web Server comes in many flavors, and all of them are big. In addition to the enterprise-level web server that can be run on Ubuntu, the software features application, messaging, calendar, and directory servers just to name a few. Sun ONE Web Server is great for handling big web needs, and it comes with an appropriately big price tag. It's definitely not something to run the school website unless your school happens to be a major state university with several regional campuses. For more information on Sun Java System Web Server, you can visit its website (http wwws.

Zeus Web Server

Ubuntu sites can also use the Zeus Web Server from Zeus Technology. This server offers a scalable SSL implementation, security settings across multiple websites, and an online administration server. The current price is 1,700 for a host platform with up to two CPUs, but load balancing via the Zeus Load Balancer costs 12,000 (at the time of writing) for each pair of load-balancing computers. You can get more information about the Zeus Web Server at http www.zeus.com products zws .

What a Web Server Is

A web server is a software program that runs on a host computer (such as a NetWare, Linux, or Windows server) and delivers files over the Internet that are stored on the host computer. Web servers let you publish Hypertext Markup Language (HTML) documents over the Internet. HTML is the primary language used to create content pages on the web. Web servers can also distribute many other types of files, such as programs, videos, audio, graphics, and compressed ZIP files. Because the delivery of content is over the Internet or intranet, the host computer running the web server must be physically connected to a TCP IP-based network.

Caudium Webserver

The Caudium Webserver is on par with Apache but again with different strengths and weaknesses. It is a nonforking, threaded web server. It offers a web-based configuration interface, templating with the RoXen Macro Language (RXML), Pike code embedding, and the Supports Database, a method through which the requesting browser's capabilities can be identified without using JavaScript in the web document. Caudium is not distributed with SUSE, but its source code can be downloaded from the project's home page.