In this issue
Bugs reported in 1.1.1:
Bugs fixed in next release:
In SSI's, dates formatted with DATE_GMT are incorrect shown
with the local timezone
Dates from timezones which are not an exact number of hours
away from GMT are incorrectly logged
SSI documents sometimes log smaller 'bytes sent' number
than were actually sent
The 'hard' server limit (maximum value for MaxClients) has
been increased to 256.
If both host name-based and ip-based virtual hosts are
used, the order they appear in the config file can affect
whether they work correctly
Apache is being prepared for a public beta release. While
there is currently no date set for the release, the
development work has slowed down to allow the internal
testing of a stable version.
The following items are under development and may be included
in the next release of Apache. See our Apache 1.2
Sneak Preview for other new features in the next release.
Setting TCP Send Buffer Size
Last week we covered a report which said that TCP transfers
could be speeded up by using a larger "send buffer". This is
the part of the operating system that accumulates information
to be sent across the network. If this is set larger, the
data is transferred more efficiently and quicker. Now Apache
will incorporate a way of setting this send buffer size. A
new directive, SendBufferSize will let you specify
the size of the TCP send buffer. Depending on the operating
system, this can be set to give better performance.
NCSA Compatible Redirects
The NCSA HTTPd server uses two directives,
RedirectTemp and RedirectPermanent, to give
temporary and permanent redirects (the difference is that a
permanent redirect indicates that the resource has moved
permanently, whilst a temporary redirect means it might
return to the original location in the future).
To help make converting from an NCSA installation easier,
Apache now understands these two directives. However it will
probably also extend the existing Redirect directive
to allow a range of different redirect statuses to be set.
For example, the "410 Gone" status can be used to indicate
that a URL (resource) is permanently no longer available.
Add and Remove Options
The Options directive is used to set the options in
force at each location. For example, it can be used in a
.htaccess file to set the options for that directory (and
sub-directories). However, when Options is used it
replaces options currently in force with those given
on the command. This makes it impossible to set up defaults
at a higher level. For example, a server administrator might
set up the default options for the document tree with an
Options directive in access.conf, as given in the example
access.conf file. If they then want to turn on another option
in a .htaccess file they have to repeat all the options from
the access.conf again.
An new syntax for the Options directive will allow
for the adding of individual options to those already in
effect. This is done by using a plus character before the
option. For example, to turn on the Indexes option in a
.htaccess file, the following could be used:
Any options already in force will remain set, and in addition
the Indexes option will be turned on. Note that if the + is
omitted Apache reverts to its current behaviour of resetting
the options already in force.
It will also be possible to remove an individual option, by
using a minus symbol instead of plus. Both forms can be
combined, so to, for example, add the Indexes option but
Options +Indexes -ExecCGI
The next Apache release will include two additional modules.
Both these modules set "meta" information about information
returned in response to requests. The first module sets
information related to caching and expiring of documents. The
second allows any HTTP response header to be set.
The expires module, mod_expires, has been added to the Apache
distribution. This optional module makes it possible to add
expiry times to returned documents. It was previously
available as a contributed module on the apache site.
This module can be used to return an expiry time for a
document based on either the current time or the file's last
modified time. Under the HTTP protocol, proxies and clients
which cache documents should get the document again after it
has expired. This module can be used to prevent caches
holding on to documents for too long, or alternatively it can
mark documents which are not going to change for a long time
to make caching more efficient.
For example, to set the expiry time for GIF files to a day,
ExpiresByType image/gif A86400
This turns on the expires module, then sets the expiry period
to 86400 seconds from the current time (the 'A' means the
access time, which is the time of the request). There is an
alternative syntax for giving times which is easier to read:
ExpiresByType image/gif now plus 1 day
Set HTTP Response Headers
A new optional module will be distributed with Apache which
will allow HTTP response headers to be set or removed. This
could be used to create non-standard headers for particular
applications - for example, meta information for an indexer.
Or it could be used to add headers for extensions to HTTP,
such as a PICS label header. The new <Files> directive
can be used to specify the file or files that the header
applies to. For example, a PICS label could be applied to all
gif or jpeg files within a directory with
<Files ~ \.(gif|jpeg)$>
Header add Pics-Label: "label ...."
Now that this module can set any header, including the
PICS-Label header, the dedicated PICS module will not be
included in Apache 1.2.