SRE-http (Freeware Server
for OS/2) Updated to 1.3A


Programmer Daniel Hellerstein updates SRE-http to version 1.3A and uploads the file (srev13a.zip, 1,26Kb) on Hobbes. SRE-http is a highly configurable, http/1.1 compliant, web server for OS/2. With advanced features such as remote configuration, caching, and SSI; SRE-http is powerful enough for technically proficient administrators, yet simple enough to be maintained by non-technical users.


SRE-http ver 1.3A is a freeware, full-featured http/1.1 (www) server for OS/2.It is designed to run under GoServe (a free, IBM EWS Internet Server). The latest SRE-http can be found at:
http://rpbcam.econ.ag.gov/srehttp

SRE-http ver 1.3A is a "conditionally compliant" http/1.1 web server. Extra features include imagemaps, CGI-Bin, redirection, common-log auditing, server side includes, URI and HTACCESS
access control, directory display with auto-description features, remote configuration, file uploads, byte range retrieval, and much more.
In addition, the Rexx based GoServe API (as augmented by SRE-http's numerous extensions) offers significant development advantages when creating web aware applications, and when otherwise crafting a customized and enhanced web site.

"For those interested in a full-featured http/1.1 compliant server for OS/2, I invite you to try SRE-http" - saids Daniel.

SRE-http ver 1.3A supports the usual http/1.1 web server functions, such as:
- Support for multiple hosts (multiple IP addresses and virtual hosts)
- Support for range-retrieval
- POST, PUT and DELETE http methods are supported.
- Support for GZIP transfer-encoding (both sending and recieving)
- NSCA and CERN server-side imagemaps
- URL redirection
- default documents for directories
- common-log auditing
- CGI-BIN compatability
- digest authentication

In addition, SRE-http ver 1.3A incorporates a number of special
features, including:
- NCSA HTTPD style server side includes are fully supported
- Documents with server side includes can be "intelligently" cached
- Support for the HTACCESS method of access control
- Support for a "selector-specific" method of access control
- Easily specified client and browser specific customization
- Local and remote (http) virtual directories can be specified and accessed
- Client and server-side content negotiation
- Several possible directory specific default documents can be specified
- ... or, "cachable" directory listings can be created
- A simple message box facility is built-in to the server
- ISINDEX-stype searchable indices (on text files) can be readily created
- File upload using FORMS (as supported by Netscape 2.01)
- Load balancing across several servers
- Fully configurable using "on-line" (web accessible) tools

To further extend SRE-http's capabilities, several addons are available.
These include:
- A Bulletin Board System; with uploads, downloads, and more..
- Yet another directory display facility, with many options
- Client customization using cookies and server-side includes
- A keyboard driven, on-line scientific calculator
- A "news-group/list-server" discussion group package.
- A directory-indexer/search-engine
- Create and check all urls in a web-tree
- Create a web searchable index of the contents of your site



************************

I. Introduction.

At it's heart, SRE-http is a "filter" for GoServe. SRE-http is designed to
work with GoServe 2.52 (and above), and will run under OS/2 3.0 (and above).
It will run under OS/2 2.11, but it uses the Warp version of the
REXXUTIL library (which contains some routines not in the OS/2 2.1x version).
In other words:
If you use GoServe under OS/2 2.11, or with earlier versions
of GoServe (prior to 2.52),you might have sporadic problems.

Notes:
* if you are using OS/2 Warp Server; you may need to install
the latest fix packs
* If you are using Object Rexx (under OS/2 4.0), you will NOT be
able to use SRE-http.
* GoServe is a free IBM EWS Internet Server -- you can get it from
http://www2.hursley.ibm.com/goserve.
* SRE-http comes with the standard freeware dislaimer -- use it
at your own risk (see the bottom of this document for a more
complete disclaimer). That said, we want to know when you run
into problems, and are always willing to help.
* Questions? Contact Daniel Hellerstein : DANIELH@ECON.AG.GOV

************************

II. Installation instuctions:

1) Obtain and install the latest version (2.52 or above) of GoServe.
2) Unzip SREV13A.ZIP to an empty, temporary directory...
(you can use UNZIP, a recent copy of which is on the SRE-http home page)
3) Open an os/2 window
4) CD to this temporary directory
5) Run INSTALL.CMD.
i) You will be asked for a variety of directories.
ii) You will also be asked for your IP address (it's optional).
iii) You will be given the opportunity to set a few parameters --
which you can modify later.
iv) You will be given the opportunity to set up a username with
SUPERUSER privileges. We recommend that you do this (it's required
for remote configuration). Of course, you can always create
such a SUPERUSER later.

6)If you are reinstallating SRE-http:

* INSTALL will ask if you want to archive the (potentially) user-
configurable files. We recommend selecting this option.

* If INSTALL detects a pre-existing file, it will ask you if
you want to overwrite it. For some "configuration" files
if will ask you twice!

* Several of the program files (such as SREFILTR.80 and COUNTER.RXX)
contain "advanced" user-configurable parameters. If you had changed
them, you'll need to change them again (in the new versions
you just installed). That is, INSTALL does NOT retain these values;
it just creates backup files, and then overwrites.
HINT: SRE-http's EDITSREF.CMD utility makes it easy to change
parameters in SREFILTR.80 and in ADDON\COUNTER.RXX.

7) If this is a first time install, you must change your default filter
(in GoServe) to be SREFILTR.80
Alternatively, in many cases the SREPROXY.80 "simple proxy" can be used
to improve performance.

8) Start GoServe. But first:
* Are you using GoServe 2.52? If not, you'll need to download it
(see notes below).
* You must set the Options-Limit-Connection_maintain to some positive
number (say, 15).
* You must have a properly defined TZ variable in your CONFIG.SYS
file (TZ defines your time zone, relative to Greenwich Mean Time).
Advanced Users Note:
If you are willing to sacrfice full compliance with http/1.1, you
can force SRE-http to ignore some of these prerequisites by
setting the CHECK_COMPLIANCE parameter in SREFMON.CMD.


9) Assuming you were able to choose the
default parameters (in step 5.iii), point your browser at
http://your.server.whereever/index.sht

This SRE-http home page contains a number of useful links
to documentation, demos, and configuration tools. Of particular
interest is the users-guide, and the configurator.

The users guide (GUIDE.HTM) outlines the capabilites of SRE-http, and
points to further help. It's a good place to start ...

The configurator can be accessed via
http://your.server.whereever/CONFIGUR.HTM
It has three modes: simple, intermediate, and expert.
New users will probably be most comfortable with the simple mode.

************************

III. Miscellaneous notes


* For the latest version of SRE-http, demos, and addons --
visit the SRE-http home page at http://rpbcam.econ.ag.gov/SREhttp

* SRE-http ver 1.3A will work with GoServe 2.50. However, several http/1.1
features require 2.52 -- thus, we highly recommend obtaining GoServe 2.52.

* You can get the latest copy of GoServe (currently 2.52) from:
http://www2.hursley.ibm.com/goserve/
(or, you can find a copy of it on the SRE-http home page).

* If GoServe won't let you in (because it can't find a filter), you can
add "FILTER SREFILTR.80 " (without the quotes) to the
GoServe WPS object (the icon's) "parameters" option.

* SRE-http will NOT run under Object Rexx. There
is a (ever aging) version of ver 1.2g that will run under Object Rexx
(see the SRE-http home page for details).

* If you have relatively simple demands, the simple mode configurator
may be adequate for all your needs. Conversely, if you want to
optimize SRE-http's performance, you will probably want to
use the intermediate, or expert, mode.

* INTRO.DOC contains a 1 page summary of SRE-http's capabilites.

* Upgraders from prior versions of SRE-http should read CHANGES.DOC
.
* SREhttp.FAQ contains answers to some frequently asked questions.

* The SRE-http "web-accessible manual" is SREhttp.HTM.

* For optimization hints, and a complete description of the user
configurable parameters, see INITFILT.DOC

* The various .IN and .CTL files that come with SRE-http contain
descriptons, and examples, of how to set up these "username,
URL access control, etc." files.

* SRE-http uses "OS/2 macro space" to store frequently
used routines, and uses queues and semaphores for inter-thread
communication. To do this, the REXXLIB library is used.
Although you have free rights to use REXXLIB with SRE-http,
if you intend to use REXXLIB for something other then SRE-http,
you should obtain the REXXLIB package from
http://www.quercus-sys.com/rexxlib.htm.

* Several of the functions used by GoServe requires RxSock.DLL --
the Rexx Sockets Support library. It should be in your LIBPATH
(it is usually in your \TCPIP\DLL directory).

* Several other freely availalbe dynamic link libraries are distributed
with, and installed by, SRE-http.


CONTACT AUTHOR

Daniel Hellerstein
danielh@econ.ag.gov

@Macarlo, Inc.
@Macarlo's Shareware & Web
OS/2
Java Lobby Member
Java Site Accredited

[TOP] [HOME] [INDEX]