23 Jun 1995 - Preliminary Information

# How to Get SpHyDir

SpHyDir is a copyrighted program which is a personal project and property of the author. It is made available on the network and may be used free of charge under a license terms distributed with the package. Essentially, you agree to leave in all HTML documents produced by SpHyDir the credit that appears at the bottom of all of these Web pages: "This document generated by SpHyDir, another fine product of PC Lube and Tune."

This arrangement is called "Personal SpHyDir." If a large organization wants to generate more professional looking documents and omit the credit, other licensing arrangements can be made with the author.

The following references are correct. They work with Web Explorer and Netscape and conform to current HTTP and HTML standards. If they don't work on your Browser, get a better Browser. Otherwise, you can fetch the files with FTP from pclt.cis.yale.edu. They are in the SPHYDIR subdirectory of PUB. If you have trouble with your browser, then read the trailing tutorial on Web handling of binary files to figure what went wrong.

With a good browser, just select the name of any desired files and save them to disk on your machine. All are compressed with the ZIP utility from the INFOZIP project.

- SPHYDIR.ZIP - The basic SpHyDir package. Includes the program, some sample External Rexx "XSpO" scripts, a proposed starting point for the GOFILTER needed by the GOSERVE server on OS/2, and the shared code Rexx segments for easy forms processing.

- VROBJ21C.ZIP - The VX-Rexx 2.1B runtime library, VROBJ.DLL. This file must be in your LIBPATH for SpHyDir and many other freeware and shareware packages to run. You may already have this file. SpHyDir will run on 2.1B and later versions of this runtime module.

- SPHYDOC.ZIP - A copy of all these HTML pages and their associated GIF files. Unlike other PCLT documents, the SpHyDir documents may be downloaded and copied. This provides a good example of lots of SpHyDir use.

- GBM.ZIP - A freeware package written by an IBM employee and distributed through a number of sources. This OS/2 program converts between a number of popular image formats (GIF, TIFF, XBM, BMP, etc.) and can crop or resize images. Use this package to convert BMP or Clipboard images into GIF suitable for including in a Web document.

## Distributing Binaries through the Web

Fetching a ZIP file through the Web should be a trivial matter. Unfortunately, a number of popular Browsers (particularly NCSA Mosaic) don't do a reasonable job of handling such files.

Web Servers support the HTTP (HyperText Transfer) Protocol. The first version of HTTP (0.9) simply transmitted Web files back to the reader. The current standard (1.0) preceeds each file with a statement of its data type in Internet MIME style. This allows the Browser to distinguish between HTML, plain Text, ZIP binaries, and MPEG movies.

Web Browsers can also read files using the FTP protocol. With FTP, the server doesn't provide any indication of the data type, but the file name contains an extension that usually indicates the type of data (*.ZIP, *.JPG, *.GIF, etc.). In the early days of the Web, HTTP was generally used to distribute HTML files, and FTP was generally used to distribute other binary formats.

No Operating Systems record the MIME file type in the disk directory. So most HTTP servers look at the file type and create a MIME data type based on the extension of the file requested. Thus if a browser fetches SPHYDIR.ZIP using FTP, it will decide that it is a ZIP file because of the *.ZIP extension, but it it fetches the same file using HTTP from the same server, the the Server will look at the *.ZIP extension, decide that it is a ZIP file, send the MIME header with that information, and the Browser will react accordingly.

The problem is that a lot of Web Browsers have developed the convention that anything that comes over HTTP protocol should be either displayed on the screen or played through the speakers, while files that come over FTP can be saved to disk if they have a file extension that makes that seem right. Nothing in the standards says any such thing. Architecturally, a URL can call up ftp:, gopher:, or http: protocols to fetch a file. What you do with the file should then be determined by the type of data and not by the protocol used to fetch it. But it is hard to convince some Browsers to save a ZIP file to disk if it came over HTTP protocol. In most cases, the ZIP file is actually on disk in the Browser's CACHE directory, but it may be hard to find. When it doubt, fall back on plain FTP.

Back PCLT

Copyright 1995 PCLT -- SpHyDir Web Document Manager -- H. Gilbert
May be distributed with SpHyDir program

This document generated by SpHyDir, another fine product of PC Lube and Tune.