Which Web Server Is the Right One for You?

Application Servers
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

There are several Web servers available for your iSeries 400 platform.

The classic or "native" HTTP Web Server (the original Web server for the AS/400 and then iSeries system) is the Web server being used more than any other. It's based on the CERN Web server developed at the University of Illinois. The CERN HTTP server uses the Version 3 CERN kernel and is very stable. However, on the newsgroups and email list servers, early V5R1 users of the classic HTTP server have indicated that there may be a problem with reliability under V5R1 in some situations. If you're moving to V5R1, be sure to include all the cumulative PTFs as well as any additional PTFs for the Web server.

The second most-used Web server for iSeries 400 is the unique Web server program that ships with Domino. This Web server is based on the GO Web server. IBM insiders have told me that the Domino Web server is very popular in iSeries 400 shops and is extremely powerful in shops where the average usage does not exceed 5,000 concurrent users. If you're going beyond that, you might want to consider migrating to the WebSphere Application Server (WAS), which uses the classic HTTP server or the Apache Web server, which do not have such thresholds.

Other available Web servers include the Microsoft Internet Information Server (IIS), the Novell Web server for NetWare, and an experimental Web server known as Jigsaw, which is written entirely in Java. Jigsaw is virtually unused, and the update to Version 2.2.x is long overdue.

Now, about this thing called Apache: Apache is the latest open-source Web server that everyone is talking about. Apache does run on the iSeries 400, and IBM encourages you to use Apache instead of the classic server. But should you?

Until OS/400 V5R1, Apache wasn't all that interesting. But with V5R1, Apache has come into its own. It's now much faster and more reliable than it was in V4, and it seems to run very well, even on smaller iSeries 400 systems, such as Model 270 and 170. In addition, the Tomcat servlet has been ported to OS/400, so running JavaServer Pages (JSPs) and related application-server applications is a breeze.

IBM offers WAS, which runs on top of Apache. It does the same types of things as Tomcat, but WAS is not an open-source architecture. So if you want open source, use Tomcat; if you want to use IBM's development tools to build your JSPs and so forth, you'll need to use the chargeable feature known as WAS.

So, Apache is the Web server (technically, the HTTP server), and Tomcat is the thing that handles JSPs (Version 1.1) and servlets (API Version 2.2) for the Web server.

Apache is the most widely used Web server in the world--not on iSeries 400, but on every other platform. So moving to Apache should be in your strategic, if not tactical, plan.

Moving to Apache shouldn't cause you too many headaches. Fortunately, all your CGI RPG IV and Net.Data code will continue to work as it did before. Configurations for JSPs and Java servlets may need to be altered to work with Apache, but other than that, everything should move over fine.

Now, let's talk about the configuration files. These files are used to control the settings, including security and CGI calls, of the server instance. The bad news is that the classic HTTP server's configuration settings are completely different from the Apache configuration settings. Prior to V5R1, IBM did not provide a reliable conversion tool for porting the classic HTTP server configurations to the corresponding Apache configurations.

The good news is that, under V5R1 and later, the conversion tool works well--it is very usable. The conversion tool is available through the administrative (*ADMIN) instance of the server under V5R1 and under the ADMINA instance in V4R5. To use it under V5R1, you select CREATE NEW and then select Apache (under V4R5 it works differently). You will then be asked if you want to create a new configuration or convert an existing instance to Apache. Select that option and you're on your way. For a more thorough article on configuring the HTTP server powered by Apache, see Bob Cancilla's article "Virtually Enabled: IBM HTTP Server (Powered by Apache) Advanced Functionality."

So, if you're moving to V5R1 or V5R2 (announced a few months ago and now available), you should consider moving to Apache. If you're on V4R4, you have to stay on the classic server. If you're on V4R5, you have a choice, but I would recommend you stay on the classic server if you're already there.