Maintaining Web Publications at Ohio University

Organizing Files on CSCWWW


Return to Chapter I  Return to Table of Contents  Go to Chapter III



Chapter II Table of Contents

Overview

A. Logging in

B. Changing Password

C. Obtaining Online Help

D. Other VMS Commands and Keystrokes

E. Storing Data on Disk

  1. Disk, Directory, and Filename Notation

  2. Default Disk Directories

  3. Creating New Directories

  4. Directory and File Housekeeping

  5. Controlling Access to Your Web Pages

F. Linking to Your Files

  1. Paths in URLs

  2. Relative Paths for Links

G. Logging out


Overview


This chapter has parts that all CSCWWW web maintainers will need to know, and other parts that will be of interest primarily to those who have decided to take the approach of using the system editor on the CSCWWW server to maintain their HTML files. We suggest that you skim it once and then come back and study the parts that you need.

Everyone will need to login and change their account's password. You will also need to login to create the appropriate directory structure, unless your FTP software provides that capability. If you are using KERMIT, VersaTerm, or CUTCPIP's "piggyback FTP" to transfer your files, you will need to login and change your default directory as the first steps in the transfer. All maintainers will need to login from time to time in order to purge obsolete verions of files, which will otherwise accumulate and exhaust your disk space allocation.



Return to Chapter II Table of Contents



A. Logging in

To use CSCWWW interactively, telnet to "www.ohiou.edu". If you have a direct ethernet connection, this should be straightforward.

CSCWWW should display a short message, including announcements of any times in the near future when the system is scheduled to be down, followed by a line with only "USERNAME: ".

If the "USERNAME:" prompt does not appear soon, type the "<Return>" key a few times.

If still no luck, and you are using a WAN port, type the break-out key, which is probably either "<Control>-Y" or "<Control>-^". Then,

Finally, start over.

In response to the "USERNAME: " prompt, type your username, followed by the "<Return>" key. Next, you should see the prompt, "PASSWORD: ". The system does not display your typed entry (this makes it harder for other people to watch over your shoulder to learn your password). If, before hitting the "<Return>" key, you realize that you have mistyped, use the "<Delete>" key, and retype. (On most keyboards, this is the key immediately to the right of the regular "=" key.) The first time you login, you may have to change your password, as described in the next section.

General messages will then appear on your screen. Finally, the VMS prompt will be presented, a "$" at the left side of the screen.

Once you have the VMS "$" prompt, you can, for example, change your default (working) directory, create new directories, transfer files to or from your personal computer, etc.



Return to Chapter II Table of Contents



B. Changing your CSCWWW Password

When you get a new account, you will be told the password. Often that password will be good for one login only. In that case, when you first login, you will be prompted to supply a new password. Even if you are not forced to, you should promptly change the password yourself. After logging in (by telnet, as described in the previous section), at any time you have the VMS "$" prompt, you can change your password by typing

$ SET PASSWORD

You will be asked to enter the old password, the new password, and then the new password again for verification (to make sure you didn't mistype it). (Press the "<Return>" key after each password.) None of the password characters that you type will be displayed in any way on the screen. You cannot go more than 60 seconds between keystrokes during the password-changing process, or you will have to start all over again. If the system responds to your final "<Return>" keystroke with anything but a message saying that your password has been changed, then it has not been changed, and you should try again.


Standard rules for choosing a new password

Passwords are stored in the system in an encrypted form only. The encryption method used is one that cannot be reversed, so the system manager has no way to find out what password you have selected. If you forget your password, contact the VMS Systems Manager (593-0247) or the Academic Technology Manager (593-1017), who will logon to the machine and assign you a temporary password. You should then promptly logon and change it. It is wise to change your password from time to time.

Any time you change the password, you should also check that the E-mail forwarding for your account on the server is correct. Instructions are on-line in Appendix II.



Return to Chapter II Table of Contents



C. Obtaining Online Help

The on-line help facility can be accessed through the command

$ HELP

This will evoke a list of commands and other topics on which help is available. If you know the name of the command, and want to learn more details, type the HELP command followed by a space and then the command you want help about:

$ HELP command

The resulting display includes a brief discussion about the command, each qualifier, and the parameters. Most commands' HELP information includes several examples, with discussion. For example, to get help on the HELP command itself, type

$ HELP HELP

If you are not sure what the appropriate command is, ask for hints by typing

$ HELP HINTS

The general purpose commands that may not seem obvious can often be discovered by typing one of the following two commands:

$ HELP SET

$ HELP SHOW

A world wide web interface to the system on-line help files provides an alternative to the operating system's screen-based system. This VMS HELP was provided as a part of the demonstration files with our server software.



Return to Chapter II Table of Contents



D. Other VMS Commands and Keystrokes

The following keys are useful and perhaps not obvious:


<Control>-Y
will yank you gracelessly but promptly out of almost any program back to the VMS "$" prompt or to a menu; from either place you will have many choices about what to try next. If you are working through a WAN port, this may take you back to the WAN prompt, from which you may choose to "RESUME" or "DC" (disconnect, which will terminate your process on the VAX). If the WAN port is in your own office, you may ask CNS to define "<Control>-^" as the WAN break-out, permitting "<Control>-Y" to function as the VMS escape.

<Delete>
located next to the "=" key (and sometimes called DEL, RUBOUT, BACKSPACE, or ERASE), <Delete> will cause the deletion of the character directly to the left of the cursor. You will see the effect displayed immediately on the screen. Do not use "<Control>-H" or "<Left Arrow>" for deletion, but you can use them to re-position the cursor before overstriking.

<Return>
has the same effect as a carriage return on an ordinary typewriter. Usually the commands you type will not be processed until after the "<Return>" is typed. This permits correction of mistyped commands, in many cases, by using the "<Delete>" key.

The default prompt for the VMS operating system is the dollar sign prompt ("$"). You may enter Digital Command Language (DCL) commands when the "$" prompt is displayed. To simplify terminology in this guide, we will refer to DCL commands as VMS commands; we mention the acronym "DCL" here only because you may encounter references to it, for example, in the on-line HELP. The prompt may be changed to something besides the dollar sign, if you give the appropriate commands. VMS does not automatically display the current default directory as part of the system prompt, but you can give commands to set the prompt, or you could create a command procedure that mimics MS-DOS's behavior (but it would "lose track" if you used the regular commands to change the default directory).

A command line is the complete specification of a VMS command. It contains a verb, a parameter, and possibly also one or more qualifiers. The general form of a VMS comand line is:

An example of a command line is:

$ DIRECTORY  /SIZE    WELCOME.HTML
    verb    qualifier   parameter

This particular command displays a listing of information (including the size of the file in blocks) about all versions of the file "WELCOME.HTML", if there are any files of that name located in the current default directory.

VMS command verbs, qualifiers, and some parameters can be abbreviated. For example, instead of the example displayed above, it could have been entered as:

$ DIR/SIZ WELCOME.HTML

You must enter enough characters of each comand element so that the element is uniquely determined. For example, "DI" is not enough to make the element DIRECTORY unique because the VMS verbs DISMOUNT, DIFFERENCES, DISCONNECT, and others, also begin with the letters "DI". In the current version of VMS, no other verb begins with "DIR", making the command "DIR" unique. Similarly, the DIRECTORY command has both SINCE and SIZE qualifiers, so "/SI" would be ambiguous, but "/SIZ" works. Future versions of the VMS operating system might introduce new commands requiring more letters to avoid ambiguity. Digital's announced policy has been to make all commands and qualifiers unique within at most four characters, but that may not continue to be true, so it is good to be aware of the full form of any command.



Return to Chapter II Table of Contents



E. Storing Data on Disk

OAK and CSCWWW, like most computers, have two types of memory: the main working memory, RAM, which is faster, more expensive, smaller, and erased by power failure; and magnetic disk memory, which is slower, cheaper, larger, and permanent. The information stored on disk is organized into files, and those files are grouped into directories. A good analogy can be made here to the organization of paperwork in an office: pages with characters printed on them are placed in file folders (disk files), which are grouped in file drawers (disk file directories), in a filing cabinet (disk drive). Typically, each department will have several directories, each of which may contain many files.

As a protection against catastrophe, Computer Services staff make tape backup copies of all files on OAK and CSCWWW on a regular basis. Each night in the wee hours a tape is made of all files modified or created since the last weekly backup. Each weekend a full backup is recorded with the system up. Once a month the system is shutdown for a complete backup. The monthly backups are stored in a different building, "just in case."



Return to Chapter II Table of Contents



1. Disk, Directory, and Filename Notation

VMS (the operating system of CSCWWW), like DOS or Windows on a PC and like the Macintosh, organizes information on its disk drives in a heirarchical tree of directories. A directory is a file that contains information about other files. Like the PC and the Macintosh, a VMS directory (equivalent to what is known as a "folder" on the Macintosh) may contain any mixture of files and subdirectories.

To distinguish one disk file from another in VMS, you must identify the disk drive it is located on, the directory it is listed in, and its name. (As explained below, you will usually be able to abbreviate the names of your own files by leaving many of these parts untyped.) Figure 2 is an example of a complete VMS file specification:

WEB_USERS:[ACATEC.WWW]WELCOME.HTML;4

Figure 2: Full VMS File Specification.

The order in which the parts of a VMS filename appear is from the most general to the most specific: device, directory, subdirectories (if any), filename proper, filename extension (or "type"), and version number. The punctuation is required to be as shown in Fig. 2, with no spaces:

We next discuss the parts of the full file specification in the order that they appear. Disk drives, like other VMS devices, such as printers and terminals, have "physical device names" that are typically composed of several sections terminated by a colon, for example:

$1$DKA200:

This is a disk drive (the device type "DK"), in the first "allocation class" (the "$1$"), on controller A, unit 200. This corresponds to the typical "C:" on an IBM PC running DOS, or to "Macintosh HD" on a Macintosh. In addition, there are "logical device names," software "nicknames" for devices, which are discussed in section C of Appendix II. They also are terminated by a colon, and are used as if they were physical devices; "WEB_USERS:" in Fig. 2 is an example of a logical name used as if it were a physical device name. Usually such logical names are chosen because they are easier to remember and to type!

Following the device name is the directory and subdirectory list, enclosed in square brackets, with the subdirectories, if any, marked off by periods. Directories and subdirectories are discussed in more detail in the following two sections. Typically you will give commands to set your default device and directory, and then, in most cases you don't have to type the full file specification. If you do not specify a given portion of the filename, VMS will either assume something specific (the "default"), or it will look for anything in that field, depending on context. You can explicitly ask it for anything in a field by using the "wildcard" character, "*". For example, to delete from the current default directory all files that have a filename of "HOWDY", and any file type, and any version number, you would use the command

$ DELETE HOWDY.*;*

For most situations you will find that the device and directory default is exactly what you want, or you can set it to be what you need, so that you will rarely need to type the device or directory as part of a filename. The commands you use to change the default device and directory are discussed in the next section. The filename and extension are usually specified (except for those commands that have a default extension, so that only the filename proper need be specified).

Both the filename proper and the filename extension may each have up to 39 characters (including letters, numerals, $, _, and -). Letters and numerals are easier for you and your readers to type, so we urge you to use only letters and numerals for filenames. As with passwords, VMS makes no distinction between upper- and lower-case letters in filenames. Because directories and subdirectories are files, their names are limited to 39 characters. The filename extension of a directory is always "DIR" and the version number of a directory is always 1. This is the reason for point 3 of the list in section A of Chapter I, stating that you should give your directories names containing no periods.

The default version number handling is quite intuitive: if you never type the semicolon or version number, then when VMS creates a new file with the same name as an existing file (for example, when you upload a revised file), the system will presume that you want to create it with a version number that is one larger than the largest existing version number of that file. When an existing file is to be opened (for example, to fulfill the request of a browser), if VMS finds several files with the requested name but with different version numbers, the one with the largest version number is assumed to have been meant, thereby giving you the latest version of the file. Effectively then, the new version replaces the existing version, but that old version is still there on the disk until you remove it with the "DELETE" or "PURGE" commands. If your new version of a file turns out to be a catastrophe, you can quickly revert to the previous version simply by deleting the newest version, as discussed in part 4 of this section.



Return to Chapter II Table of Contents



2. Default Disk Directories

When you login, your default device and directory are set for you by the system, according to the information in the user authorization file (the system database that also includes your encrypted password).

Subdirectories may be nested eight deep in VMS. On CSCWWW, as just mentioned, your web files start two levels deep. This is the reason for point 1 of the list in section A of Chapter I, stating that you should organize your web files with at most six levels.

CSCWWW users who login for interactive access to the server can change their default device or the default directory, or both at once, using the same command:

$ SET DEFAULT device:[directory]

You may specify either the device, the directory, or both parts on the same command line. If both, then no spaces are permitted anywhere between the start of the device name and the close square bracket that ends the directory specification. For the foreseeable future, each user of CSCWWW will have all of his or her own web files on the same device, so when you use the SET DEFAULT command, you will not need to type the device or the colon, only the directory specification, including both square brackets. The "SET DEFAULT" command in VMS is equivalent to the "CD" command in DOS and when using FTP, except that with VMS you must specify the directory using square brackets (and periods, if needed).

The next several examples involve files organized into the directories shown in Fig. 3:

Figure 3: A Simple Directory Structure

If the directory you specify in the "SET DEFAULT" command starts with a period, then the default directory is changed to that subdirectory of the current default. For example, if the default is WEB_USERS:[ACATEC] (number 1 in Fig. 3), as it would be immediately after login for user ACATEC, and you give the command

$ SET DEFAULT [.WWW]

then the default becomes WEB_USERS:[ACATEC.WWW] (number 2 in Fig. 3).

As a convenient shorthand, the next higher level directory is specified by a hyphen. For example, if your present default is WEB_USERS:[ACATEC.WWW.CAMPUSINFO] (number 3 in Fig. 3), then the command

$ SET DEFAULT [-]

would change your default to WEB_USERS:[ACATEC.WWW] (number 2 in Fig. 3, again). For another example, if your present default is WEB_USERS:[ACATEC.WWW.OAKUSAGE] (number 4 in Fig. 3) then the command

$ SET DEFAULT [-.CAMPUSINFO]

would change your default to WEB_USERS:[ACATEC.WWW.CAMPUSINFO] (number 3 in Fig. 3, again).

In order to discover the current default device and directory, give the command

$ SHOW DEFAULT

This will provide the full device and directory specification of the current default setting, so that you know where you are.

In order to restore the default device and directory to those that you had just after you logged in, give the command

$ SET DEFAULT SYS$LOGIN

"SYS$LOGIN" is a standard "logical name," (see section C of Appendix II) that the system defines for you automatically for this purpose. (As such, it is equivalent to "~" on a unix system.)



Return to Chapter II Table of Contents



3. Creating New Directories

If you have (or expect to have) more than two or three dozen files in one directory, organizing them into subdirectories may well be appropriate from your perspective in trying to keep track of everything. The server should have no problems with even as many as 1,000 files in any subdirectory. On OAK or CSCWWW, you can create new directories by using VMS commands, or by using your FTP software, as documented below.

If you create a subdirectory and later decide you don't want to use it, or want to use one with a different name, you cannot remove the subdirectory using FTP software, but you can remove the subdirectory with VMS commands only, as documented below, in the sections "Removing a Subdirectory" and "Copying and Renaming Files."


Using VMS Commands to Create New Directories

On CSCWWW, you can do it directly from the VMS "$" prompt. The basic command is "CREATE/DIRECTORY" - but there are two variations:

$ CREATE/DIRECTORY [directory.subdirectory]

and

$ CREATE/DIRECTORY [.subdirectory]

The first form of the command creates exactly the directory specified, regardless of the current default directory. The second form of the command creates a new subdirectory within the current default directory. When you are using CSCWWW, your primary directory is the same as your username, and all your web files are in the second level directory WWW, or subdirectories of WWW. To create a third level directory, you could give a command such as the following, which is an example of the first variation:

$ CREATE/DIRECTORY [ACATEC.WWW.CAMPUSINFO]

or you could give the following three commands, the last of which is an example of the second variation:

$ SET DEFAULT SYS$LOGIN
$ SET DEFAULT [.WWW]
$ CREATE/DIRECTORY [.CAMPUSINFO]

After you have created a new directory, you can move files into it with the "RENAME" command, as discussed in the next section. There is on-line help for the "RENAME" and "CREATE/DIRECTORY" commands. Contact the VMS Systems Manager for assistance if needed.


Using FTP to Create New Directories

Both Fetch (on the Macintosh) and WS_FTP (on Windows) provide for the creation of new subdirectories.

With Fetch, choose "Create New Directory..." from the Directories menu. You need only specify the name of the directory (e.g., "images", without the quotes) to create it as a subdirectory of the current directory.

With WS_FTP, click on the "MkDir" button on the upper right of the window to create a new directory on the server. You need only specify the name of the directory (e.g., "images", without the quotes) to create it as a subdirectory of the current directory.



Return to Chapter II Table of Contents



4. Directory and File Housekeeping


Checking Disk Space Usage

To see how much disk space you have currently used, including the space occupied by your directory files, etc., CSCWWW users have the command

$ SHOW QUOTA

The response is in terms of disk blocks, which are of one-half kilobyte size (512 bytes). Thus, each 2,048 blocks is one megabyte.


Listing Your Files

To see a list of all your files in the current default directory, including modification date and size in blocks, use the command

$ DIRECTORY/SIZE/DATE

If there are no files in the current default directory (or if you specify a filename and there are no files of that name), VMS will report an error before giving you the "$" prompt again; for example:

$ DIR JUNK %DIRECT-W-NOFILES, no files found $

To see a partial list that includes only some of your files, include a file specification after the command. For example,

$ DIRECTORY/SIZE/DATE *.HTML

would show all your HTML files in the current default directory, and the command sequence

$ SET DEFAULT SYS$LOGIN: $ DIRECTORY/SIZE/DATE [.WWW...]*.HTML

would show all your HTML files in all your web subdirectories, taking advantage of the fact that a directory specification that ends in "..." is interpreted by VMS as, "and all subdirectories below that."

If you want to see a list of all files in the current directory, but without the clutter of including multiple older versions of the files, use the command

$ DIRECTORY/SIZE/DATE *.*;0

This uses the trick that version number zero is interpreted by VMS as, "the highest version number already existing."


Inspecting the Contents of a File

To inspect the contents of a file, you can give a command such as the following:

$ TYPE/PAGE INDEX.HTML

The /PAGE modifier causes the display to stop after each screenful, waiting for you to press the "<Return>" key. If you don't need to see any more of the file, type the "<Control>-Y" key combination.


Purging Old Versions of Files

The PURGE command on CSCWWW removes extra, old, versions of your files. If you have an unusually large file (so it is worth doing) that has been in use long enough that you are confident it contains no errors (so it is safe to do), you might sensibly choose to omit the /KEEP=2 modifier on the PURGE command (thereby using the default value, /KEEP=1). We suggest that you ordinarily keep both the latest and the previous version of each file on-line, by always using the /KEEP=2 modifier, as illustrated here:

$ PURGE/KEEP=2 *.*

If you don't include the /KEEP=2 modifier, then only the highest version number will survive.

If you want to clean up all your web directories at once, you can use the following two-command sequence:

$ SET DEFAULT SYS$LOGIN
$ PURGE/KEEP=2 [.WWW...]*.*

This command purges all files in your "[.WWW]" subdirectory, and all subdirectories nested within it, keeping only the two highest-numbered versions of each file.

If you need more disk space, please contact the VMS Systems Manager by E-mail to "webteam@ohio.edu". The reason for enforcing disk quotas is to prevent accidentally filling the disk, which would disrupt all functioning of the web server, and to remind all web maintainers that disk space is a limited resource. We won't know to increase your quota unless you tell us you need more space!


Deleting Files Entirely

To remove a file, use the DELETE command; the most useful form includes a modifier, as illustrated below:

$ DELETE/CONFIRM file.type;n

Using the "/CONFIRM" modifier is especially wise because the internal design of VMS as a multi-user system does not support any useful "undelete" utilities. If you delete a file that was not recorded on a nightly or weekly backup, you will have to re-create it. When you use the /CONFIRM modifier, it will ask you for confirmation of each file deletion. If you respond by typing the "<Return>" key, no deletion takes place; to delete the file, you must confirm by typing the letter "Y" followed by pressing the "<Return>" key. If you have used any wildcards in the file specification, you can also respond to the confirmation prompt by typing the letter "A" followed by pressing the "<Return>" key; doing so will pre-confirm all of the remaining operations. The version number is required in the DELETE command, either a specific number or the asterisk wildcard. If you specify an asterisk ("*") for any of the three parts, it will delete all files meeting the other specifications, regardless of what they have in that part (including any files with nothing at all in that part). If you specify a zero ("0") for the version number, it will delete only the highest version number that it finds, leaving the previous versions, if any, intact. This is useful if you have discovered that your newest version of a file is worse than the previous version. If you omit the directory specification, the delete command will act only on files in the current default directory.

Please consult Chapter I, section D, part 1, point 6, before deleting the last remaining version of any files!


Removing a Subdirectory

There are three steps to remove a subdirectory:

  1. Remove all files from it.

  2. Mark the directory as deletable.

  3. Delete it.

Each subdirectory counts as a file with respect to outer subdirectories. That means that you have to delete the inner-most subdirectory before you can delete the subdirectory that contains it.

For example, suppose that you have a MOREJUNK directory within a JUNK directory within your WWW directory, and you want to remove both MOREJUNK and JUNK: first you remove the files from within MOREJUNK, then remove the MOREJUNK.DIR;1 directory file from within the JUNK directory, then any other files in the JUNK directory, and then finally the JUNK.DIR;1 directory file from within the WWW directory. For our example, then, you will need to perform each of the above three steps twice, because you are removing two directories. The step numbering below corresponds to that used above. If the subdirectory you want to remove is located somewhere else, you will have to modify the "set default" command appropriately.

Telnet to the server, login, and then type the following:

  1. $ set default [.www.junk.morejunk]

    $ dir *.*;*

    Inspect the list of files before using the operating system's DELETE command.

    $ delete *.*;*/confirm

    You could also delete the individual files from within your FTP software, instead of using the operating system's DELETE command.
    .
    .
    .

  2. $ set default [-]

    $ set file morejunk.dir;1/protection=owner:rwed

  3. $ delete/confirm morejunk.dir;1

Then you can remove the JUNK directory with commands such as:

  1. $ dir *.*;*

    Inspect the list of files before using the operating system's DELETE command.

    $ delete *.*;*/confirm

    You could also delete the individual files from within your FTP software, instead of using the operating system's DELETE command.
    .
    .
    .

  2. $ set default [-]

    $ set file junk.dir;1/protection=owner:rwed

  3. $ delete/confirm junk.dir;1

If, as shown above in steps 2, you set the protection to "rwed", you can do anything with the directory file, including deleting it; if you set it to "rwed", and then change your mind and decide to keep the directory, be sure to re-set the protection to "rwe".


Renaming and Copying Files

To change the name or version number of a file, use the RENAME command, as illustrated below:

RENAME/CONFIRM  oldfile.oldtype;n  newfile.newtype;m

When you use the /CONFIRM modifier, it will ask you for confirmation of each file rename operation. If you type the "<Return>" key, no renaming takes place; to rename the file, you must confirm by typing the letter "Y" followed by pressing the "<Return>" key. If you used a wildcard in the file specification, you could also respond to the confirmation prompt by typing the letter "A" followed by pressing the "<Return>" key; doing so will pre-confirm all of the remaining operations. If you specify a particular version number and a file of the specified new name and version already exists, that existing file will be deleted by the rename operation. You can use the RENAME command to move files from one directory to another if you precede the filenames with the appropriate directory specifications; for example:

$ RENAME/CONFIRM []*.html;0 [.newsub]*.*

will move the latest versions only (version number zero) of every file in the current default directory that has a type of ".HTML" into the "NEWSUB" subdirectory of the current default directory; that will leave behind in the old location any relic files with smaller version numbers. This example also illustrates the fact that an empty directory specification ("[]", with no spaces) is interpreted by VMS to mean the current default directory.

The RENAME command can also be applied to a directory file, thereby changing the path for all files within that subdirectory:

$ set file oldname.dir;1/protection=owner:rwed
$ RENAME/CONFIRM oldname.dir;1 newname.dir;1
$ set file newname.dir;1/protection=owner:rwe

After these commands, any file that was "[.oldname]file.type" has become "[.newname]file.type", and likewise for subdirectories of that directory, and files within those subdirectories.

The RENAME command cannot be used to move files from one disk drive to another, but that situation is not likely to arise for users of CSCWWW, because for the foreseeable future each user account will have all of its files together on the same disk.

The RENAME command changes the name of an existing file. To create a new file instead, but with the same contents as an existing file, leaving the existing file unchanged, use the COPY command:

$ COPY oldfile.oldtype;n newfile.newtype;m

Appropriate device and directory specifications can, of course, precede either or both filenames. For example,

$ COPY WEB_MAINT:[WEBWEAVER.TEMPLATES]*.* []

This copies the latest version only (because no version is specified) of all files in the TEMPLATES subdirectory of the WEBWEAVER account to the current default directory (the empty "[]", with no spaces). You can use this specific command interactively, while logged in, to obtain the current copies of the template files.

The version numbers can be omitted from a "COPY" command; if they are, the latest version of the old file is used and the new file gets version number 1 if no such files already exist, and version number one larger than the largest existing version if there are already files of that name. The /CONFIRM modifier is legal for the COPY command, but less often used than it is with RENAME or DELETE, because COPY does not destroy any existing files (unless you give a specific version number for the new file and a file of that name and version already exists).



Return to Chapter II Table of Contents



5. Controlling Access to Your Web Pages

On OAK, you can restrict pages to be visible only to authorized users of the OAK system, that is, any employee or student of Ohio University, regardless of where in the world they are located, or how they are connected to the internet. For details, see the OAK site discussion.

On the CommonSpot Front Door, you can also control access to your pages based on OAK login ID. For details, see the CommonSpot Advanced Pagemasters discussion.

On CSCWWW, as discussed here, you can control the access to your Web pages in two ways:

  1. by username and password;

  2. by IP address of the machine used by the browser.

The former is appropriate for a small group of people. The latter is appropriate if, for example, you want to permit access to anyone who is physically present at Ohio University (or connected through Dialnet), but not to people outside the university.

Both forms of protection require a change to the Web server software's configuration file, followed by a re-start of the server software. Since this requires system manger intervention and disrupts all Front Door Web page serving, you should contact the Academic Technology Manager (by E-mail to webteam@ohio.edu or by phone to 593-1017) well in advance of needing to implement either form of controlled access on the Front Door server.

Both forms of protection involve controlling access to all Web files (HTML pages, graphic images, etc.) within a specific primary folder (and any folders nested within it) inside your WWW folder. Each primary folder has its access controlled according to the contents of a protection file. In order to reduce the risk that the contents of the protection file would be compromised, it is not located inside the WWW folder, but will instead be located in a folder named "PASS," located in your login directory (it will be a "sibling" of WWW), that will be created by the system manager at the time protection is established.

The two forms of protection require different syntax in the server configuration file, and different syntax in the protection file. It is therefore not possible for you to change from password to IP protection, or vice versa, without intervention by the system manager (see the contact information, two paragraphs above).

Both forms of protection use a protection file that is a plain ASCII text file, just like an HTML file or an imagemap data file. You will download the initial protection file, revise it with your favorite word processor, and then upload the revised version. Make sure that both transfers take place in ASCII mode, not binary mode! The changes you make will not take effect until the server is re-started. This happens at least once a week, in the wee hours on Monday morning. If you need to have it happen sooner, please contact the Academic Technology Manager.

If you want to remove the entire protected folder and all its files, be sure to leave the protection file in place until the Academic Technology Manager has removed the appropriate lines from the server configuration files. You can, of course, edit the protection file at any time to remove specific individuals or IP numbers, and upload the revised protection file to be used until the final removal.


Password Protection

Be aware that the passwords are encrypted by the browser before being sent down the wire, but the encryption method used is quite weak. Therefore this is not a method to be used to protect highly confidential information, nor should the passwords duplicate those used for personal E-mail accounts.

You can control the access by editing the protection file. An example file might look like the following:

<realm> Academic Technology Services
system  *
acatec  *
firstuser  choose_something_shorter_here

The realm information from the first line will be presented as part of the dialog when the browser asks the reader to enter a username and password, so that they are reminded about which username and password is called for.

The lines ending with asterisks ("*") tell the server to check that particular username and password against the authorized users of the system. Because of the weakness of the encryption used to transmit these passwords, such lines should only be used during on-campus testing.

The lines that have two words take the second word as the password. The owner of the Web pages chooses the password. Because the passwords are stored in plain text and cannot be changed by the individual users, this is not a highly secure method, and the passwords should not duplicate those used for any other purpose.


IP-based Protection

The usual reason for IP-based protection is to permit all individuals at Ohio University, and no others, to see your pages. The protection file in this case will have a line for each permitted IP address or group of addresses. The majority of Ohio University addresses are specified by the single line shown in the example below:

maskgroup @132.235.*.*

If you need to include all Ohio University people, we will provide you with a starting file that includes all the specific IP addresses of the users who would be left out by the above line.



Return to Chapter II Table of Contents



F. Linking to Your Files


1. Paths in URLs

The URL path specification is directly translated from the VMS file specification: for example, a file on CSCWWW named

[ACATEC.WWW]WELCOME.HTML

has the URL

http://www.ohiou.edu/~acatec/welcome.html

In this URL we have shortened the IP address by taking advantage of a network alias for CSCWWW: "www.ohiou.edu" instead of "www.cats.ohiou.edu". The path specification starting "~acatec" is automatically translated by the web server software to mean "the [.WWW] subdirectory of the login directory of the user ACATEC." Therefore, you don't include "/www" in the path. From then on you use the standard URL punctuation of a "/" to separate subdirectories in a path, instead of the VMS notation of period separators with surrounding square brackets. For another example, the file

[ACATEC.WWW.CAMPUSINFO]OVERVIEW.HTML

has the URL

http://www.ohiou.edu/~acatec/campusinfo/overview.html

And, for yet another example, the file

[TCOMDEPT.WWW.COURSES.TCOM769]INDEX.HTML

has the URL

http://www.ohiou.edu/~tcomdept/courses/tcom769/index.html

If a URL specifies a subdirectory, but has no filename, the CSCWWW web server automatically searches that subdirectory for a file named "welcome.html" to display. If it doesn't find "welcome.html", but does find a file named "index.html", it will display that instead. If it doesn't find "index.html", but does find a file named "index.htm", it will display that instead. If it doesn't find "index.htm", but does find a file named "welcome.htm", it will display that instead. If it doesn't find any of those files, it will create an index on its own, listing the files it does find. As a result, the URL given just before this paragraph would function identically to the following shorter URL:

http://www.ohiou.edu/~tcomdept/courses/tcom769/

This feature of the server simplifies the typing that your users have to do when they open the link explicitly, and reduces the typing you have to do whenever you specify a backlink to the home page of any subdirectory, provided that you use "welcome.html", "index.html", "index.htm", or "welcome.htm" as the filename of each directory's home page. Although many browsers do not need the terminal slash ("/") on such a URL, some do, so it is best to include it. The "index.htm" or "welcome.htm" file is especially useful to PC users, who can test locally with identical filenames and links that will work after transfer (most browsers are content to accept HTML files with names ending in ".htm", because CSCWWW is configured to tell them that such files contain HTML).



Return to Chapter II Table of Contents



2. Relative Paths for Links


As mentioned in Chapter I, using relative paths for links will reduce your typing now and will make it easier to migrate your web files to another server in the future if you should decide to do so. Relative path names are a standard feature of HTML (see, for example, pages 27-28 of Aronson, 1994; pages 79-82 of Lemay, 1995; pages 167-168 of Graham, 1995). Let us consider some examples based on the subdirectory structure of Fig. 3, but now including a few specific files, as shown in Fig. 4.

Figure 4: Files and Directories.

The simplest relative file specification is for a file that is located in the same subdirectory. For example, the tag in [ACATEC.WWW.OAKUSAGE]INDEX.HTML that specifies the graph of OAK User Population, file [ACATEC.WWW.OAKUSAGE]OAKUSERS.GIF, is

<IMG SRC="oakusers.gif" ALT="[Image]">

A more complex relative file specification is for a file that is in a subdirectory of the directory containing the file with the link. For example, in [ACATEC.WWW.]WELCOME.HTML, the link that specifies [ACATEC.WWW.OAKUSAGE]INDEX.HTML, is

<A HREF="oakusage/index.html">Usage statistics</A>

Another possibility is to link to a file in the parent directory of the subdirectory containing the file with the link. For example, in [ACATEC.WWW.OAKUSAGE]INDEX.HTML, a link that specified the file [ACATEC.WWW]WELCOME.HTML, one level up, would be

<A HREF="../welcome.html">Academic Technology</A>

Thus we can see that a ".." in a relative URL corresponds to a "-" in a VMS directory specification.

Another case is a link to a file in a "sibling" directory (a different subdirectory of the parent directory of the subdirectory holding the file with the link). For example, a link in [ACATEC.WWW.OAKUSAGE]INDEX.HTML going to [ACATEC.WWW.CAMPUSINFO]OVERVIEW.HTML would be

<A HREF="../campusinfo/overview.html">CIS Overview</A>

The server presents the appearance that there is one directory above all of the departmental [.WWW] directories, namely the server's default directory. Therefore, from your departmental home page you could refer to the Computer Services home page as

<A HREF="..">Computer Services</A>

Although this would work, we don't suggest doing so. It is better to use a URL that will work from any level, so that you can copy and paste from any existing document into a new one:


<A HREF="/"><IMG SRC="../www/ougifs/cs_small.gif" ALIGN=CENTER
BORDER=1 ALT="o">
Return to Computer Services Home Page</A>

In this example we also included the in-line thumbnail logo inside the link, for the reason explained in point 11 of section D in Chapter I. We also did use the relative path name for that GIF file. The reason for doing that is in order to be able to preview the file on your local hard disk. If you copy the GIF files that you use from our server and place them in a folder named "ougifs" within a folder named "www" that is at the same level as the folder that contains your web files, then the relative URL shown here will work during testing and online.



Return to Chapter II Table of Contents



G. Logging out

Whenever you have the "$" prompt you can logoff directly with "LO<Return>". You must logoff to prevent passersby from gaining access to your files.



Return to Chapter I  Return to Table of Contents  Go to Chapter III


Ohio University Front Door |Webauthors Welcome| Academic Technology



Dick Piccard revised this file (http://www.ohiou.edu/pagemasters/memo85/chap2.html) on August 24, 2006.

Please E-Mail comments or suggestions to "acatec@www.ohiou.edu".