File list for SRE-http

This is the list of installed files -- the actual files packed with SRE-http will differ slightly (since the INSTALL process modifies and creates a few files).

Note that unless otherwise mentioned:

  • Files with .80, .CMD, and .RXX extensions are written to (or under) the GoServe working directory (for example, D:\GOSERVE)
  • Files with .CTL, .CNT, and .IDX extensions are written to the DATA subdirectory of your data directory (for example, \GOSERVE\DATA)
  • Files with .SHT, .HTM, .GIF, .MAP, .KEY, .DAT, .FAQ, and .DOC extensions are written to the SAMPLES subdirectory of your data directory (for example, \GOHTTP\SAMPLES)
  • The Filter Programs

    SREFILTR.80
    The main filter program.
    SREFMON.CMD
    An ancillary program, started by SRE-http. It runs on it's own thread, and is responsible for starting other "helper" threads, and keeps SRE-http informed of on-the-fly changes to the various SRE-http parameter files.
    SREFPRC.ZIP
    SREFPRC.ZIP contains the components of the "dynamic" procedure library that SRE-http loads into macrospace when first invoked. It contains a number of useful routines that ambitous REXX programmers may use when writing their own server side programs -- see SREFPRC.DOC for a description.
    USERCHK.RXX, ALIASCHK.RXX, ACCESCHK.RXX, VIRTCHK.RXX, POSTFCHK.RXX, SSICACHE.RXX, VARSTORE.RXX, PUBURCHK.RXX, and PMPRINTF.RXX
    These program files are started (by SREFMON.CMD) as "daemon threads". SRE-http uses them to (respectively):
  • lookup usernames/passwords
  • perform alias substitutions
  • check for access and other permissions
  • do virtual directory lookups
  • run the post-filter actions.
  • track the SSI cache
  • store clientname and other variables
  • write output to the PMPRTINF window and/or the SREHTTP.LOG file
  • Very ambitious programmers may want to modify these programs.
    Normally ambitious programmers can direct SRE-http to use a custom usernames/passwords lookup routine. For details, see the description of the USER_LOGON_PROC parameter in INITFILT.DOC
    *.SRF and SREFPRC.RXL
    SREFPRC.RXL and about 90 .SRF files are installed in the SRE-http "library" directory. These are the components of the "SRE-http dynamic macrospace procedure library".

    Required dynamic link libraries

    FILEREXX.DLL
    FILEREXX.DLL provides useful locked-file-reading services. It's part of the larger, copyright-but-anyone-can-use, FILEREXX package (available from http://hobbes.nmsu.edu.
    REXXLIB.DLL
    A library of REXX procedures used to access macrospace, create threads, and use semaphores. It is part of the REXXLIB shareware package (available through Quercus Systems or HOBBES.NMSU.EDU).
    UNZIPAPI.DLL and UNZIPAPI.DOC
    UNZIPAPI.DLL is the INFO-Zip dynamic link library. SRE-http uses it during installation, and uses it when expanding and extracting descriptions from .ZIP files.
    SRXFUNC.DLL
    SRXFUNC.DLL contains SRX_MD5, which is used to create MD5 digests (note: it's a freely useable DLL, created especially for SRE-http)
    GZIP.EXE and GZIP.TXT
    GZIP.EXE (a GNU software product) is used to compress (and expand) GZIP'ed files. GZIP.TXT is the documentation that comes with GZIP.EXE

    Installation files

    INSTALL.CMD
    The SRE-http installation program.
    READ.ME (copied to your GoServe working directory)
    Some installation notes, acknowledgments, and a disclaimer.
    SREFCONF.CMD, CONFIG2.CMD, CONFCOLR.HTM, CONFCOLR.CMD, CONFIGUR.HTM, CONFIG0.HTM, CONFIG2.HTM, CONFIG3.HTM, and *.CNF.
    These are the SRE-http configurator programs. The .HTM files should be in your data directory. The .CMD files should be in your working directory. The *.CNF files should be in the CONFIGS subdirectory of the GoServe working directory.
    USERCFG.CMD, ALIASCFG.CMD, ACCESCFG.CMD, VIRTCFG.CMD, and HTACCFG.CMD.
    These are the REXX/HTML programs called by CONFIG2.HTM. They will view or modify the initialization parameters file, the users file, the aliases file, the access control file, the virtual directories file, and HTACCESS files (respectively). Each uses an HTML FORM interface to solicit information from the user.

    Parameter Files

    ALIASES.IN
    A sample of an alias file. Aliases are used for implementing searchable indices, for document redirection, and other useful tricks.
    ALL_FILE.CTL
    Used to store SEL-specific access information.
    COUNTER.CNT
    A sample "count of hits file", for use by the REPLACE HITS keyphrase. This is NOT used by COUNTER.RXX (yes, it's a bit confusing, but it's a bit late to change now).
    INITFILT.80
    INITFILT.80 contains the initialization parameters that can be changed by the user.
    INTERPET.IN
    INTERPET.IN (the default INTERPRET_FILE) contains samples of "REXX-executable" code blocks, for use by the INTERPRET xxx keyphrase. The use of INTERPET.IN is no longer encouraged, but is still supported.
    MEDIATYP.RXX
    The "user defined" list of mediatypes.
    PUBURLS.IN and PUBURLS.DOC
    Sample PUBLIC_URLS file, and a description of what it's use.
    REPSTRGS.IN
    A customizable list of REPLACEment strings, used by the REPLACE.
    RECRDALL.CNT
    A sample of a "record all requests" file, that is used when the RECORD_OPTION is active.
    SENDFILE.CNT
    A sample "tracking and control" file. SENDFILE.CNT is used by the SRE-http's SENDFILE facility.
    SREFLOGS.INI and SREFLOGS.DOC
    The configuration file for the common-log, browser-log, and referer-log audit-files; and a description of how to change it.
    USERS.IN
    A sample of a username/password/privileges file.
    VIRTUAL.IN
    A sample of a "virtual directory" file.

    Useful addons and facilities for SRE-http

    ADDPRIVS.RXX and ADDPRIVS.DOC
    ADDPRIVS.RXX is used in (INTERPRET SSI keyphrases) to add dynamic client privileges. ADDPRIVS.DOC describes how to use dynamic privileges.
    BYBROWSR.RXX and BYBROWSR.DOC
    BYBROWSR.RXX is used (in INTERPRET SSI keyphrases) to include browser-specific files into an HTML document. BYBROWSR.DOC provides the details.
    BYCLIENT.RXX and BYCLIENT.DOC
    BYCLIENT.RXX is used (in INTERPRET SSI keyphrases) to include client-specific files into an HTML document. BYCLIENT.DOC provides the details.
    ADV_OPTS.CTL, FAQ.CTL, ADV_OPTS.CMD, ADV_OPTS.DOC
    Samples and documentation for SRE-https advanced options
    BROWSERS.IDX and BROWSERS.CMD
    An index of browsers, listing various capabilties, such as whether they understand TABLES and COOKIES. BROWSERS.CMD can be used as an SRE-http addon (it will read BROWSERS.IDX) or as a stand alone program (to generate a new version of BROWSERS.IDX).
    COUNTER.RXX, and COUNTER.DOC
    A "counter" for your web pages, invoked using a server side include. COUNTER.DOC is the manual for COUNTER.RXX.
    Note that COUNTER.RXX has several features, including the ability to save information (such as the client address and the time) for all requests. Also, COUNTER.DOC includes code for a simple demo of how COUNTER.RXX is used.
    DODELETE.CMD
    A simple stand-alone REXX program that uses the DELETE http method to delete files from a web server (designed to work with SRE-http ver 1.3).
    DOGET.CMD
    A simple stand-alone REXX program that uses the GET http method to request a URL on an http server. This file can be easily modified to request "byte ranges" from a web server running SRE-http ver 1.3.
    DOPOST.CMD
    A simple stand-alone REXX program that uses the POST http method to invoke a CGI-BIN script, or some other form of server side processing ( such as a SRE-http addon), on an http server.
    DOPUT.CMD
    A simple stand-alone REXX program that uses the PUT http method to transfer files to a web server (designed to work with SRE-http ver 1.3).
    DOSEARCH.CMD, DOSEARCH.HTM, TESTSRCH.HTM and CONGRESS.DAT
    A "search for string in a text file" facility, a sample HTML document that uses it, and two files used to demonstrate "searchable indices".
    EDITSREF.CMD and EDITINIT.CMD
    Two simple stand-alone REXX program that will edit parameters in SREFILTR.80 and in INITFILT.80 (respectively). EDITSREF is especially useful when you are configuring SRE-http remotely (but do remember that changes to parameters in SREFILTR.80 take effect only when you restart GoServe). EDITINIT is included for convenience (since most of the parameters in INITFILT.80 can be remotely modified with the SRE-http configurator).
    FREEUP.CMD
    A simple, stand-alone REXX program that "cleans up" resources used by SRE-http. It should ONLY be run AFTER you kill GoServe!
    PERL.DOC and TXTCLOCK.PL
    PERL.DOC describes how to use CGI-BIN scripts written in PERL. TXTCLOCK.PL is a simple example of such a PERL script.
    PREFILTR.80
    A SRE-http pre-filter procedure. Besides being a sample, this provides support for the GoRemote "server remote control" package.
    POSTFILT.80, POSTMAIL.80, POSTRCRD.80
    Several sample "post-filters": a simple example, an "e-mail alerts by event" example, and a "record client info by event" example. Note that the "e-mail" example requires the SMTP_GATEWAY variable.
    RENLOGS.CMD
    A sample of a scheduable program , RENLOGS.CMD will archive the common, browser, and referer logs on a scheduled basis (see SREFLOGS.DOC for details on how to execute a scheduable program).
    SAMPCOOK.RXX and SAMPCOOK.SHT
    These provide a simple demonstration of the use of "cookies" (requires a cookies-aware browser such as NetScape 2.0).
    SHOWDIR.CMD and SHOWDIR.DOC
    SHOWDIR.CMD is a front-end to the SHOWDIR dynamic directory list processor (it's an alternative to SRE-http's !DIR). SHOWDIR.DOC describes out to use SHOWDIR in the SRE-http environment.
    CHECKSEL.CMD
    This will display the various mappings, modifications, and redirections that a user entered URL is subject to by the various machinations of SRE-http-- useful information for debugging and verification (under construction)!
    XCOUNT.CMD, TEST-CGI.CMD, and JCOUNT.CMD
    XCOUNT and TEST-CGI are sample CGI-BIN programs (courtesy of GoHTTP HTTP filter system.
    XCOUNT.CMD will generate a "count of hits" bitmap file (and will also augment hits); it is (minimally) called as /CGI-BIN/XCOUNT/?URL_NAME.
    TEST-CGI reports on the current "CGI-BIN" environment variables.
    Both of these are written to your CGI-BIN directory (for example, \GOSERVE\CGI_BIN)
    JCOUNT is a simple variant of XCOUNT designed to be used with the EXEC HTTPD-style server side include. JCOUNT just returns current "hits" as a text integer (rather then as an image). It uses the same database as XCOUNT (the two can be used interchangably).

    Sample html documents and images

    ACCFAIL.HTM
    Samples of a "SEL-specific access failure" response files.
    COUNTER.SHT
    Demonstrates various SRE-http hit counters. You should also see the sample code (for CNTDEMO.SHT) in COUNTER.DOC.
    DIGITS.ZIP
    Samples .GIF digit files for use by COUNTER.RXX. They will be copied to the \DIGITS subdirectory of your GoServe data directory. You can view a sample of them by loading DIGSAMPL.HTM (also in this \DIGITS subdirectory).
    DIRINFO.RXX
    Sample of a "REXX-code" blocks that can be used in an INTERPRET keyphrase: displays current information on document's directory.
    GIFS.ZIP
    A variety of useful GIF files. They will be copied to the \IMGS subdirectory of your GoServe data directory.
    INDEX.SHT
    A sample home page that links to many of the HTML files listed here (assuming you haven't recreated it for your own purposes).
    LOGFAIL.HTM
    Sample of a "logon-failure" response files.
    NOTFOUND.HTM
    A sample of a "document not found" response file.
    SAMPMAP.GIF, SAMPMAP.MAP, and SAMPMAP.HTM
    Demonstrates the use of image maps.
    SAMPOPT1.SHT and SAMPOPT2.SHT
    Demonstrates the use of the OPTION keyphrase.
    SAMPMBOX.SHT and ANYONE.LOG
    Demonstrates the use of message-boxes. ANYONE.LOG will be written to the SRE-http MESSBOX_DIR directory.
    STATUS.SHT and STATUS.CMD
    STATUS.SHT demonstrates several SRE-http features, and provides an example of how to invoke Server Side Processing by calling STATUS.CMD (STATUS.CMD will return information on SRE-http settings).
    TSTHTTPD.SHT
    Sample of NCSA HTTPD style server side includes.
    TESTTABL.SHT, TESTTABL.TBL, TESTTABL.DEF, REPLACES.HTM
    Used to demonstrate server side includes.
    TESTVALU.SHT and TESTVALU.CMD
    Demo of SRE-http's SREF_VALUE function
    UPLOAD.HTM
    Demonstrates the use of SREFILTR's GET_URL command for uploading files from other HTTP servers.
    USETABL2.RXX
    Sample of a "REXX-code" blocks that can be used in an INTERPRET keyphrase: checks browser type and displays a table.

    Documentation

    CACHING.DOC
    A discussion of the various types of caching used by SRE-http.
    DIR.DOC
    A discussion of SRE-http's !DIR dynamic directory display facility.
    DAEMONS.DOC
    A description of how to use SRE-http's daemon manipulation procedures.
    FILELIST.HTM
    This document.
    GUIDE.HTM
    The users guide to SRE-http -- tells you what SRE-http can do, and where to find out how to do it.
    HELPLIST.HTM
    List of the various SRE-http documentation files.
    HISTORY.TXT
    A recent history of the changes to SRE-http.
    INITFILT.DOC
    INITFILT.DOC is a complete description of the parameters contained in INITFILT.80 -- it is recommended reading for more-than-casual users of SRE-http.
    MK_ADDON.HTM
    Some hints on how to use the GoServe/SRE-http API to create your own web-aware applications.
    MULTSEND.DOC
    Description of SRE-http's SREF_MULTI_SEND procedure: which is used to create "multiple-part document" and to "send a document in pieces"
    NEGOTIAT.DOC
    Description of SRE-http's content negotiation features.
    OUTLINE.HTM
    An outline of the steps that SRE-http follows when processing a request.
    srehttp.htm
    The SRE-http manual (about 200k, but still not big enough). This describes all aspects of SRE-http, and includes installation instructions and a glossary of terms.
    SREhttp.FAQ
    Short answers to an ever-changing list of "frequently asked questions".
    SREFPRC.DOC
    Description of SRE-http's macrospace library -- a useful set of tools for those interested in writing addons! SREFQUE.DOC A description the SREF_QUEUE procedure: which is used to manipulate SRE-http queues.
    SREPROXY.80, SREPROXY.RXX, SREPROXY.DOC and SREPROXY.sht The SRE-http "proxy-like" front-end for SRE-http; command files, documentation, and demo document.
    TIMEFMT.DOC
    Brief description of the timefmt options (timefmt is a NCSA HTTPD server side include directive).

    SRE-http addons

    SRE-http has a number of addons avaiable. You can download them from the http://rpbbcam.econ.ag.gov/srehttp site.

    Some of the currently available addons: