Apache Week
Issue 26, 2ndAugust1996:

Copyright 2020 Red Hat, Inc

In this issue

Apache Week moves home and redecorates

Apache Week has moved to a new home, at http://www.apacheweek.com/. If you have any links or bookmarks to the old addresses, please update them now. Apache Week is still produced by UK Web, but this new domain will make us easier to find.

This issue also marks six months of Apache Week. We have taken the opportunity to re-arrange the site. You will now find links to past feature articles, and a collection of 'hints-and-tips' for anyone running an Apache server.

As always, Apache Week remains committed to bringing you the latest Apache news first. Each week we will report on what is happening in Apache software development, and we will list and explain bugs found in the released versions. But we will also be extending our news coverage to other issues of key importance to anyone running Web services. This week, for instance, we report on how Netscape and Microsoft are trying to hold the high ground on support of open standards.

Apache is most widely used server, and attracts Bill Gates' attention

The August Netcraft Server Survey shows that 36% of all surveyed servers run Apache. While this survey cannot reach internal (firewalled or Intranet) servers, it shows how Apache's share of public servers has consistently increased over the past year. At the same time, Windows NT based servers have also grown, with Microsoft's IIS server now at 5.5%.

Apache has even got the attention of Microsoft chairman Bill Gates. At a recent meeting with financial Analysts, he stated that in the server marketplace "Apache is our biggest competitor. It's gaining share faster than Netscape." (See C|net report).

Apache Status

Release: 1.1.1
Beta: None
Bugs in 1.1.1:

  • HP UX Compiler errors and warnings.
  • A couple of file descriptor bugs (one of which can cause SEGV crashes on Linux).
  • Various proxy module bugs.
  • Bug in the SCRIPT_NAME passed to CGI where the ScriptAlias directory included some PATH_INFO.

The following items are under development for the next release of Apache.

Limiting access by individual files

The <File> section directive joins <Location> and <Directory> in the next Apache release. While <Location> matches on the requested URL, and <Directory> matches whole directories on paths, <File> can be used to match individual files. <Location> could be used to do this, but this can only be used in the central access.conf file. <File> can be used in .htaccess files, and can given filenames relative to the directory containing the .htaccess file. So, for example, it would be possible to password protect an individual file.

A regular-expression parser will come with new versions of Apache. The paths, directories and URLs specified in <Directory>, <Location> and <File> sections can be specified as regular expressions, as well as plain text. This will allow much more flexibility in assigning restrictions to files and requests.

Stopping Runaway Processes

Apache will include facilities to limit the resources taken up by CGI programs or other sub-programs run from the server. This can be used to prevent CGIs and other programs eating up too many resources on a system. For example, it will be possible to limit the amount of CPU time or virtual memory taken by a sub-process.

Keep-Alive hack

Some browsers running on Windows 95 have problems using Keep-Alives. In particular, Netscape version 2 and early betas of 3 tend to 'hang' after the first file has been delivered. The work-around is for Apache to automatically detect if it is talking to a buggy client, and if so it will not use the persistent connection features.

Speeding up Persistent Connections

A recent report found speed problems with persistent connections (see Apache Week issue 23). The next release will include one of the recommendations from this report. Specifically, it will attempt to disable the 'Nagle' algorithm on the connection. This normally causes a delay sending the last bit of a response, and is intended to increase effiency in some protocols, such as telnet. However, for HTTP it is better disabled.

Perl Module

Another beta release of the Apache perl module is available. It is now closer to being transparent for perl authors, so existing CGIs will work with less changes.

Extra Functionality for the Cookies Module

At present, whenever the cookies module is compiled in it always generates cookies. These are used to create a log which can be analyzed to track individual users. However there are some cases where it might not be desirable for the server to always generate cookies - for example, in a customer's virtual host. A new directive CookieEnable has been developed to allow the generation of cookies to be turned on or off.

In addition, when the server generates cookies they have no expiry. Some sites might prefer to expire cookies, so another new directive CookiesExpire lets the administrator specify how long the cookies are valid before they expire. This can prevent any confusion of the user tracking log caused by people who leave their browser running all the time.

Netscape and Microsoft battle for (open) standards leadership

Browser and server developers Microsoft and Netscape are both pushing different standards for interacting between embedded applications on the Web. Meanwhile Sun continues to develop the Java environment.

There are a growing number of ways of adding interactivity to Web pages. Besides the compiled Java and scripted JavaScript, Microsoft have updated their OLE technology for the Internet, and called it ActiveX. This provides a linking mechanism between different components on a machine, which lets the Internet Explorer browser use native embedded applications (called controls in Windows). ActiveX is based on Microsoft's proprietary linking and component object technologies (OLE and COM) standards.

Microsoft frees ActiveX standard

Microsoft recently announced that they would place the ActiveX standards, along with related standards COM and DCOM, in the care of a group of third-party developers and customers. This is the latest stage in the battle between Microsoft and Netscape who are both trying to show that they respect vendor-independent standards. Last month, Microsoft announced their 'pledge' on HTML standards, and Netscape have regularly stated their commitment to the open standards process.

Netscape developer environment emphasizes Open Standards

Meanwhile, Netscape have released details of their development environment Open Network Environment (ONE). This is a collection of standards and technologies to create Web objects and facilitate linking these objects together. By putting all the development tools and standards together, Netscape seems to be attempting to head off the growth of ActiveX (which is not included in Netscape ONE).

Microsoft, Netscape and Sun push different technologies

There are now several different ways of creating interactive and enhanced Web content. Java can be used to create platform-independent programs (or applets) for running inside compatible browsers, while ActiveX lets the browser access platform-specific controls and scripts (e.g. Visual Basic), as well as Java.

In addition, there are various methods for linking these different objects together. While Microsoft are pushing ActiveX, Sun's JavaSoft has been developing a linking environment called JavaBeans. And Netscape have developed their own object connectivity, called LiveConnect, which is in turn based on a open standard for objects called CORBA. Most of these environments will inter-operate with the others.

Of course, Apache can serve up any sort of content, whether it is HTML, Java, Visual Basic, ActiveX or any other format. But these different standards can make it difficult for content providers to know what type of content to use.

Apache in the News

API Programming

WebSmith magazine has an article on Programming with the Apache API.