Php business directory script
Server's Advantage
The choice of which software powers your Web site or intranet can make as big a difference as whether you choose to play tennis on grass or clay. But choosing Web server software involves weighing many more advantages and disadvantages than the choice of court surface, and the stakes for your business are probably a lot higher. This software is the communication engine behind all Web sites, and it's increasingly called on to do more than simply deliver Web pages and images to browsers. Web server software ties in intimately with your Web applications and can even dictate the technologies those applications employ. The Web server software also plays a vital role in determining how many browsers your site can service simultaneously and how quickly.
Choose the right server and you stand to gain a business advantage: You'll be rewarded not only with performance, reliability, and security but also with the hooks you need to build your site rapidly, interface with your legacy technology, and evolve to meet customer, employee, and supplier needs. Choose the wrong one and you'll still be able to put up a site, but you may find yourself mired in maintenance tasks, frustrated by the lack of options for your needs, and distracted from your organization's core mission.
Even if you decide to turn over management of your servers and infrastructure to an outside Web hosting company—an increasingly attractive option for all kinds of sites—you'll still want to decide which software the host should use. (See "Finding a Hassle-Free Host" in our issue of November 7, 2000.)
Whether you take the in-house or hosted route, we'll help you decide on server software. We set up five Web servers on both Unix and Windows systems and put them through their paces in PC Magazine Labs. We tested Apache Software Foundation's Apache HTTP Server 1.3 and Microsoft's Internet Information Services 5.0—the two servers that run the vast majority of Web sites, according to Netcraft's Web Server Survey (www.netcraft.com/survey). We also include iPlanet Web Server Enterprise Edition 6.0, Roxen WebServer 2.2, and Zeus Web Server 4.0.
We considered testing thttpd—the tiny/turbo/throttling Web server (www.acme.com)—because it's small and potentially fast, but we decided that its limited feature set wouldn't offer a fair comparison with the other products. Thttpd has the distinction of having popularized throttling, the ability to restrict the bandwidth specified pages or subsites consume. Several of the servers in this roundup implement throttling.
A Web server's fundamental function is simple enough: It responds to a request from an agent (typically a browser), determines whether to grant access to the desired item, and fulfills the request by either returning a file from the file system, passing the request to dynamic-content-generating code, or perhaps returning an error message. But that simple description of events hides a lot of complexity in the ways that Web servers handle requests to optimize performance. It also ignores configuration, management, and interactions with other code.
Unless your site is extremely simple, your server won't operate in a vacuum. It may rely on external page-generation code encapsulated in CGI (Common Gateway Interface) scripts, JSP (Java Server Pages), or ASP (Active Server Pages), to name just a few. More sophisticated sites turn the management of user sessions and business logic over to an application server that uses EJBs (Enterprise JavaBeans) or Microsoft's COM+ (Component Object Model). You may want the server to interface with your corporate directory server—usually based on LDAP (Lightweight Directory Access Protocol) or Microsoft's Active Directory—to handle user authentication. Or your site might need special features from server add-ons, such as Microsoft FrontPage Extensions.
Each Web server supports only a subset of these technologies, though many servers—notably Apache—have modular designs that allow them to be extended, and third-party add-ons can often provide interfaces that aren't available natively. Still, when you select a server, you're making at least a partial commitment to the development technologies it supports.
Web servers are relatively mature products, so features introduced in new versions tend to be more incremental than revolutionary. Still, this current crop of Web servers provides varying capability and scalability beyond their roles as page servers and development platforms.
Because all these servers support virtual servers, you can run multiple sites from a single instance of the program. iPlanet and Zeus go a step farther by allowing you to organize virtual servers into groups and simultaneously apply configuration changes to all servers in a group. Some of the servers support clustering or fail-over options, so you can use multiple machines to support heavier loads or for redundancy.
Management interfaces are another differentiator. Some products use a standalone application; many can use a Web browser interface; others are only configurable through a text-based command line. A text interface lets administrators script changes, but having other interface options is desirable. Some servers provide SNMP (Simple Network Management Protocol) support for remote monitoring; Zeus includes real-time traffic monitoring. Most of the products support dynamic reconfiguration, meaning you don't have to shut down the server and restart it to make changes.
Of the servers we tested, all but IIS run on a variety of Unix versions. Conversely, Zeus requires Unix. IIS comes standard with all Server versions of Windows. Apache, iPlanet, and Roxen run on either Unix or Windows, but they perform better on Unix. Two of the products are free: Apache and Roxen are both open-source code. The biggest benefit of open-source is that it lets you compile the server to run on a wide variety of Unix variants. If you need support and more features, you can get Apache from commercial vendors such as Covalent and Red Hat.
You may question the need to spend over $1,000 on iPlanet or Zeus, when there are free alternatives, but the purchase cost of the software is only one of many factors in the total cost of ownership. When you consider the price of hardware, developer support, ongoing maintenance, and other components, the price gap may well disappear.
To get a grip on each Web server's strengths and weaknesses, read on, and make the right choice for your game.
The 3 Paths
These three technology stacks represent a philosophical choice rather than rigid requirements. There are many instances of overlap between them; for example, an open-source devotee could easily use Java. The Microsoft model offers less opportunity for technology overlap: It pretty much restricts you to COM and ASP. And of course you don't need to use Sun products to implement Java technologies.
The 3 Paths
Microsoft
Sun/Java
Open-Source
OS
Windows server versions
Solaris, Unix
Linux
Web server
IIS
iPlanet Web Server
Apache
API
ISAPI
NSAPI
CGI
Dynamic page standard
ASP
JSP, servlet
PHP
Programming language
Visual Basic, Visual C++
Java
Perl, Pike, Python
Component model
COM+
JavaBeans
CORBA
Application server
IIS
iPlanet Application Server
JBoss, Tomcat, Zope
Database connector
OLE DB
JDBC
ODBC
Database manager
Microsoft SQL Server
Oracle, Sybase
MySQL, Postgres
Copyright ?? 2004 Ziff Davis Media Inc. All Rights Reserved. Originally appearing in PC Magazine.