Significant Changes
This page documents changes to the WASD VMS Hypertext Services Package that
have some effect on configuration or behaviour. It lists changes from version
3.1 onwards, the first to be made available as freeware.
Updating?
Beware!
Version 6.0
(June 1999)
- Proxy HTTP and FTP serving, with local HTTP caching.
- Authentication and authorization environment extension and refinement.
- Much improved WATCH detail for DCL, SSL and authorization.
-
|
|
SSL now supported using the OpenSSL 0.9.3 toolkit (with initial backward
compatibility with previous SSLeay releases).
|
OpenSSL now has integrated VMS support (largely thanks to Richard Levitte
(levitte@lp.se)). WASD SSL packages include
only object libraries, application objects, and support procedures (i.e.
sufficient to support WASD's SSL). If a full OpenSSL toolkit is desired it
should be obtained separately from
http://www.openssl.org/ or
http://www.free.lp.se/openssl/
and built locally.
- CGILIB.C source code library for easing the production of CGI C
Language scripts.
- ISAPI scripting environment.
- New TMAILER script (WASD drop-in replacement for the OSU TMAIL script).
- New CGIUTL utility, assisting with scripting at the DCL level
(particularly processing POSTed requests).
- Improved FETCH script/utility.
- Statement concerning Year 2000 and related
issues. WASD HTTPd v6.0 has had it's directory listing dates extended to
include a four digit year component.
Version 5.3
(November 1998)
- This release has some internal modifications improving performance and
granularity of processing under high loads. CGI scripting performance has also
been improved, and CGIplus is 75% faster in response.
- The WATCH facility, accessable from the administration menu, provides
an online, real-time, in-browser-window view of request processing in the
running server. Being able to observe live processing on an ad hoc basis,
without changing server configuration or shutting-down/restarting the server
process, makes this facility a great configuration and problem resolution tool.
- While virtual service support has been possible for some time, v5.3
extends this with a specific virtual server rule syntax and server startup
procedures easing the support of virtual servers, multiple server processes on
the one system, and multiple server systems within a cluster. Check the new
STARTUP.COM and
STARTUP_SERVER.COM
functionality.
- A new SET mapping rule allows ad hoc characteristics to be set against
a particular path or file template. File caching, stream-LF conversion,
character set, content-type, expiry, invalid-RMS-character can currently be set
on a per-path basis.
- Local-format error reporting, using CGI scripting, Server Side Include
documents, or even "flat" HTML files, can now be configured using
the [ErrorReportPath] configuration directive.
- SSL services may now use a server-common, or each a service-specific
certificate (in line with other virtual service improvements).
- The [AddType] configuration directive now allows a character set to be
specified with the content-type.
- Performance comparisons with OSU 3.3a are provided (as requested by
a few of the curious).
Version 5.2
(September 1998)
- This is really a very minor revision with two bug-fixes. It coincides
with the closing date for OpenVMS Freeware CD v4.
- DECnet scripting now supports connection reuse (as does OSU 3.3a)
improving latency and throughput of network-based CGI and OSU scripting.
The [DECnetReuseLifeTime] and [DECnetConnectListMax] configuration parameters
support this.
- The [AuthRevalidateUserMinutes] configuration parameter specifies
the maximum period between successive authenticated requests before the user is
forced to reenter the authentication information. Zero disables this
functionality.
- The [LogExcludeHosts] configuration parameter allows certain hosts
or ranges of hosts to be excluded from access logs. This can eliminate the
web-administrator's "noise" accesses, etc.
- The [StreamLFpaths] configuration parameter limits variable record
to stream-LF file conversion to specified paths.
- The [DirNoImpliedWildcard] configuration parameter allows selection of
directory listing behaviour for subdirectories with home pages.
- Improved HyperShelf/HyperReader behaviour in DECW$BOOK environments.
Version 5.1
(July 1998)
- The package's build support and distribution content has undergone a
significant overhaul. VMS V6.0, V6.1, V6.2 through to V7.1 should be supported
(almost) out-of-the box. Executables are no longer provided! All
installations and updates will require a link prior to any other activity.
To assist with this, along with installation and maintenance in
general, two procedures are provided:
- INSTALL.COM
- UPDATE.COM
- The HTTPd itself has generally undergone minimal change. A few
improvements to HTTP behaviour. A small number of bug-fixes.
- The Server Side Includes processor has been considerably extended,
providing facilities similar to Apache's XSSI. User-assignable variables
and the conditional processing of sections of a document provide the main
functionality.
- For servers providing multiple services a per-service access log may
now be generated. See configuration parameter [LogPerService].
- The server now allows a request to specify the content-type of a
returned file.
- Finer control in the use of SYSUAF authentication is now possible
using rights identifiers and the server /SYSUAF=ID qualifier.
- User CGI and OSU scripting is now supported within WASD's DECnet
scripting environment.
- SSL support is now provided using a package based on SSLeay v0.9.0b.
The server will still link and work with the 0.8.1 version.
- WASD script output has been changed to provide a more consistent
look-and-feel, including customizable colour schemes (consult the source
code for more information). Extensive use of HTML 3.2 tables provides heading
and button formatting (in the late '90s we should be expecting at least this
from our GUI browsers, and Lynx v2.8 still reproduces the pages quite
acceptably). A non-table-centric layout is also generally available. Logos and
other non-essential graphics have been eliminated improving the overall
efficiency and responsiveness.
Some scripts have had their behaviour or functionality slightly improved
(or at least changed ;^) In particular, the HyperReader script has
(arguably) better layout, robustness and non-English language document
friendliness.
Version 5.0
(March 1998)
- Secure Sockets Layer protocol (SSL), supported using SSLeay v0.8.1
(optional package).
- DECnet-based CGI and OSU-emulated scripting.
- Directory listing file size may now be configured to display in bytes,
kbytes and Mbytes. I like bytes,
try [DirLayout] I__L__R__S:b__D
- Of course new bugs have been introduced through the ongoing process of
fixing the old bugs, making refinements and introducing new capability
;^)
Version 4.5
(November 1997)
- Configurable, monitorable file data and revision time cache introduced.
- Configurable script run-time environments. Script interpreters such as
Perl may now be transparently activated to execute a particular script.
- Log files may now be configured to change according to a specified
period ... daily, weekly, or monthly, providing some automation in managing
file duration and size.
- Minor bugs fixed and minor refinements made.
-
Everybody else is powered by ... something-or-other, well now
we're
:^)
Version 4.4
(October 1997)
- Due to optimizations in critical sections of the server and the
elimination of debug code from production executables the server's
performance has significantly improved.
- The server can now support multi-homed hosts and multiple-port services
from the one process. Due to changes in connection request processing some
NETLIB supporting TCP/IP packages can no longer provide DNS lookup (it now
occurs at AST level, see the NETLIB documentation).
- Conditional rule mapping; applies rules only after certain criteria
other than the initial path match are met (e.g. client internet address,
browser-prefered language, browser-accepted content-type, browser
identification string, authenticated remote user, HTTP method).
- The server can optionally use the VMS security profile of a
SYSUAF-authenticated user name to determine whether access to a particular file
or directory is permitted.
- Configurable message database, supporting multiple, concurrent
languages.
- In addition to the common log format the server now supports the
common+server and combined pre-defined formats, as well as
user-defined formats.
- Some additional command-line server control functionality.
- Of course, the usual bugfixes (a couple of significant but not obvious
ones this time) and minor refinements.
Version 4.3
(August 1997)
- MadGoat NETLIB support. As well as native Digital TCP/IP Services
(UCX) support the server can now (potentially) support these packages:
- Cisco MultiNet for OpenVMS, any version
- PathWay from Attachmate Inc., any version
- TCPware from Process Software Corporation, any version
- CMU TCP/IP (VAX only) v6.5 or later is not supported due to too
great a variation from the other packages.
- Activity report. This provides a graphical representation of server
activity (requests and bytes transfered) for up to the previous 28 days.
- DCL scripting now has greater CGI compliance. Prior to v4.3 POSTed
scripts would read the request header then the body (i.e. the full
request). The CGI standard is body-only. This is now the default. A
configuration parameter allows the previous behaviour to be explicitly selected.
- Logging can now be enabled and disabled on an ad hoc basis from the
Server Administration Menu.
- Some minor bugfixes and refinements.
Version 4.2
(July 1997)
- Change of name from "HFRD VMS Hypertext Services" to "WASD VMS
Hypertext Services". This follows a change of role and name for the Division.
- CGI scripting redesigned to improve performance through the use of
persistant DCL subprocedures. Some additional configuration parameters support
the reworked DCL module.
- CGIplus scripting (minor extension to standard CGI scripting) to
further improve CGI performance through the use of persistant CGI applications.
- Additional server administration reports on requests (current and
history) and DCL/scripting.
Version 4.1
(April 1997)
- Documentation brought more-or-less :^)
up-to-date.
- HTTP response headers now more consistant.
- Delete-on-close for temporary files. Primarily used by the
UPDate facility for previewing documents. (Beware ... any file name comprising
a leading hyphen, sixteen digits and a trailing hyphen will be deleted on
close!)
Version 4.0
(February 1997)
- Very significant changes to internal data structures and processing.
- Changes to startup and login procedures to more easily support multiple
servers within clusters.
- On-line server administration menu providing reports, configuration and
run-time actions of server. Obsoletes some of the $ HTTPD/DO=...
functionality previously available from the command. More extensive server
reports, and much more, available via /httpd/-/admin/
(obsoletes /httpd/-/report/). These menus and dialogues generally
require an HTML-table-capable browser, such as Netscape Navigator.
- Ability to configure server characterstics requires changes to the
format of the HTTPD$CONFIG and HTTPD$AUTH files. Both are backward compatible,
but if upgrading and using the on-line configuration the format will be changed
the first time they are updated.
- HTTPd server becomes HTTP-cookie-aware.
Version 3.4
(October 1996)
- More extensive server reports (via /httpd/-/report/ ...
obsoleted by v4.0)
- Minor changes to error reporting.
Version 3.3
(August 1996)
- ``Basic'' and ``Digest'' authentication and path authorization. The
digest scheme has, to date, only been tested against NCSA X Mosaic 2.7-4b,
which seems to behave a little flakey when reloading documents, and does
not elegantly support stale nonces.
- A configurable module is provided to automatically convert variable to
stream-LF record format files. The stream format is much more efficiently
processed by the server. (VARIABLE and VFC are read record-by-record, all
others in block mode).
- To allow controlled access using authorization the server report is now
generated via a path, as in the anchor
``<A HREF=/httpd/-/report>'' (obsoleted by v4.0)
Version 3.2
(April 1996)
- The HTTPD$CONF configuration file no longer requires the encoding
directive (7bit, 8bit, binary, etc.). This must be removed before upgrading
from earlier versions. Encoding is now determined from the VMS file record
format (VARIABLE and VFC are read record-by-record, all others in block mode).
- Persistent connections (HTTP/1.0 defacto standard) are now supported
(for the majority of HTTP transactions). This significantly reduces request
network overhead.
Version 3.1
(January 1996)
- Initial GNU Licensed freeware release.