Instructor’s Web Page Development Guide
This guide has been written to help instructors of
the Johns Hopkins Part-Time Programs in Engineering and Applied Science
establish web pages on the Unix server called aplcenmp.apl.jhu.edu (also goes
by www.apl.jhu.edu and apl.jhu.edu, but is referred to as Server herein). There are two levels of web pages for
instructors. The first or primary
level is managed by Homewood Academic Computing and is created from the
information entered by the instructor when the web form http://apl.jhu.edu/Courses/form.html
is filled out. The purpose of this level
of information is to describe the course content. This level will not be discussed further in
this document except to say that one of the things contained in this
first-level page is a link to the secondary or second-level page.
The second-level page is managed by the webmaster
for this Server and is intended to reflect specific class information that may
be unique to an instructor, a section, and/or a term. Draft guidelines for development of this page
may be found at http://apl.jhu.edu/Misc/Instructor_Info/coursehmpage_policy.html. Typical contents include syllabus, class
notes, example problems, assignments, test scores, etc. Often an instructor will wish to restrict
portions of this level to just the students in the class at the time. More discussion on how to accomplish this
will be given later. The Server’s
webmaster, upon notification that the page is ready, will create a link to it
from the Classes page which, in turn, may be reached from the Server’s
home page (http://www.apl.jhu.edu).
Whereas the primary page is automatically
generated and maintained, for the most part, by personnel at the
Generally-speaking, web pages are
intended for and available to the entire internet community. This being the case, it seemed prudent to
provide space for Instructor web pages that does not require world access to
their Server account space. Therefore a
general access area has been set up for Instructor use that can include not
only class web pages, but also notes, files, etc. that the instructor wishes to
have generally available to his/her class.
The Unix path to this general area is /u2/instructors/Notes. Concurrent with the establishment of an
instructor account, a subdirectory is established in this area using the
instructor's last name, and ownership is given to the requesting
instructor. Thus for the instructor Jones,
there would be a directory /u2/instructors/Notes/Jones and the URL for Jones’
web page would be http://www.apl.jhu.edu/Notes/Jones.
The tools needed to create and maintain static web
pages generally consist of a tool to create and/or edit a web page and a tool
or mechanism to place that web page on the Server in the proper location (see
section above). For each of these two
general capabilities, there are a large selection of software packages that can
be used, each varying in cost, ease of use, and capabilities. For example, web page development could be
accomplished with no more than a text editor, performed directly on the Server,
a word processor such as MS Word, or fully capable professional Web Development
package such as Microsoft’s Front Page.
Placing new web pages on the Server can be
accomplished through file transfer programs that allow one to upload web pages
from a local PC to the Server. These
range from simple command-line oriented ftp
programs such as comes with Windows 95/98/NT, to GUI-based, easy-to-use
shareware packages such as ws_ftp and cuteFTP. However with JHU’s imposed security restrictions,
something like secure shell (SSH) must be used.
A non-commercial version of the "ssh client" program for
windows called "SSHSecureShellClient-3.2.9.exe" can be downloaded
from:
ftp://metalab.unc.edu/pub/packages/security/ssh/. In addition, many of the Web page composer
programs such as Netscape provide methods to “publish” a new or modified page
onto a Server.
A third class of tools that can be very helpful are
Unix commands, themselves. There are
times when the simplest method of achieving something is to telnet (actually
“ssh” for our server) to the Server and use various Unix commands at the
command-line prompt to achieve the desired effect (for example, setting up a
protected area). Refer to the end of
this document for some of the more useful Unix commands.
The first step is to develop the home web page or starting point, generally off-line (e.g. on a local PC). Other pages would then be created as needed with links to these pages from the home page. Any graphics (gif or jpeg files) or PDF files would be included. The next step involves transferring the pages to the Aplcenmp server. Finally, these pages generally need to be linked to existing pages (if they’re additions to an existing site). This last step can involve editing existing instructor web pages, or it may require modifications to the existing system-level web pages. The instructor can perform the former while the latter must be done by the webmaster.
There
are many ways to create a web page. The easiest way is to a word processor such
as Microsoft Word. MS Word 97 or newer
has the ability to convert a document into a web page by selecting “Save as
HTML...” from the “File” menu. A similar
capability exists in MS PowerPoint.
However we strongly discourage using this feature as it creates a
tremendous number of files and uses excessive amounts of disk space. It is far better to convert PowerPoint files
into PDF format (see discussion below).
Once the web pages are created (either html or pdf format), they can be
uploaded to the web site using file transfer as discussed earlier or a
“publish” mechanism that is part of many web development tools.
One
such web development tool is Netscape Communicator 4.x’s Composer program. It provides a
wysiwyg (what you see is what you get) editor creating new or
editing existing web pages. And best of
all, it is freeware and runs on PCs,
Macs, and Unix systems and provides a built-in publish
capability. There are, of course, many
other more sophisticated web development tools, some shareware, some
commercial. Refer to the Netscape
documentation or Help files for further details on the use of Composer.
In
order to link your document to an existing web page (assuming this is not the
top-level index.html page, you will
need to select a word, phase, or image and specify that object to be a link. How one
specifies it to be a link varies with the tool being used. In MS Word, select Insert->Hyperlink and
enter the path and filename of the existing web page into the first field in
the dialog box. Note: The path
should be relative to the web page located on the EPP UNIX System Server (in
the Notes/<Instructor> subdirectory), not relative to the location of
your document on your PC.
Publishing a web page generally means transferring
a locally created or modified page to the server. One of the easiest ways to transfer such
files is with one of the many File Transfer Protocol (ftp) programs available
for PCs as discussed in the tools section above. You
will need to transfer any HTML, PDF, and image files that are needed for your
web site from your PC to the Server.
Many web
development tools also have a “Publish” button that can also upload a web page
and associated graphics, etc. For
example, Netscape Composer (Versions 4.X and 7.X) have this capability. Commercial products such as Dreamweaver also
have something equivalent (as does FrontPage, but is a bit more cumbersome to
set up and use). For specific direction
on the use of these tools, refer to the tool documentation.
Because of security concerns, CGI scripts may only be installed and accessed from an instructor-owned directory. This is true whether you are a student or an instructor. Basically, the instructor is held responsible for CGI scripts that he/she allows in his/her CGI directory. The web server is set up to allow CGI scripts to be run from /u2/instructors/Notes/CGI/<instructor name>. If you wish to have such a directory made available, contact the webmaster.
Limiting Access (Password
Protection)
The simplest way password protect sections of your web pages is to create a subdirectory called “protected” or some such name. Place a file called .htaccess in that directory, along with any pages or subdirectories you want to require password access to. The .htaccess file is a text file, created with an ASCII editor such as notepad. The contents of this file control access to the directory it is in and any subdirectories of that directory. It contains the path to the authorizing files, namely a group file and a user file. The group file lists a group name and all the users in that group. The user file lists all the users and their respective passwords.
To limit access to those members of your class (the most common usage), simply define a single entry in the group file, calling it something like “class”, and have a single user defined in that class. Then the user file contains a single entry corresponding to the user given in the group file, along with associated password. Finally, in the access file, under the LIMIT restrictions, specify that the group called “class” is required. The group file is typically called .htgroup and the user file is typically called .htpasswd. You generally want the user and group files tucked away somewhere that is not generally accessible—certainly not in the same directory as the access file (.htaccess).
Example:
Let’s assume that the instructor’s home directory is /u2/instructors/smith and Ms Smith is interested in protecting some web pages for course 605123.45. She has decided to store the sensitive group (.htgroup) and password (.htpasswd) files in a subdirectory called “webpageadmin”. Finally, she has decided to use the Authorization Name “ByPassword” to help provide a hint to the reader as to what is needed to open the page in question. The .htaccess file would like something like:
.htaccess
AuthUserFile /u2/instructors/smith/webpageadmin/605123.45/.htpasswd
AuthGroupFile /u2/instructors/smith/webpageadmin/605123.45/.htgroup
AuthName ByPassword
AuthType Basic
<Limit GET>
require
group class
</Limit>
This file would be located in the directory whose contents are to be protected.
The .htgroup and .htpassword files would be located in /u2/instructors/smith/webpageadmin/605123.45 as specified in the .htaccess file above.
.htgroup
class: 605123.45
.htpasswd
605123.45: eafalmla;iu
Just as .htaccess is created with a text editor, so is the group file (.htgroup). On the other hand, .htpasswd is created with a program called htpasswd. Typing the command with no args at the Unix command line prompt will display the syntax of this command.
To convert a Microsoft PowerPoint (or Word) file
into an Adobe Acrobat PDF file, you may wish to use Adobe Acrobat’s Distiller
utility. As an alternative to purchasing
and installing Adobe Acrobat, you may obtain a free copy of 602Pro PRINT
PACK which is an easy-to-use PDF conversion tool providing fast, one click
document conversion. It works independently from Adobe Acrobat and supports any
Windows 98/NT/ME/2000/XP application that can print. Copies of 602Pro PrintPack
can be obtained from the PTE Education
office at
o
Open
the presentation (PPT file) in PowerPoint.
o
Select
“Print...” from the “File” menu.
o
Select
“Acrobat Distiller” from the printer selection (pull-down) menu and then select
“OK” to “print”.
o
When
the “Save PDF File As …” window pops up, enter the directory filename you’d
like to save the new PDF file as and click “OK”.
The process is exactly the same for 602Pro
except that for a printer type, you must select “Print2PDF”. Both a User’s
Guide and an Installation Guide
are available on line.
You can view the PDF file using the Adobe
Acrobat Reader. Adobe distributes the
Reader for free and you may want to include
a link to Adobe's web site if you are going to use PDF files on your web site.
The Adobe Acrobat Reader can be downloaded from
http://www.adobe.com/Prodindex/acrobat/readstep.html
For questions or comments on any of the above, contact webmaster.
Appendix: Useful UNIX
commands
Ø
ls - list, list the contents
of the current directory
Ø
cd <subdir> - change
directory, moves you to a subdirectory. If “cd ..” is used, you will be moved
to the directory above the current directory (known as the parent directory)
Ø
pwd - path to working
directory, provides the absolute path from the root directory to the parent
directory
Ø
rm <filename> -
remove, delete a file. If”rm *” is used, all files in current directory will be
deleted.
Ø
mv <filel>
<file2> - rename, changes the name <filel> to <file2>
Ø
mv <file1>
<subdir> - move, moves the file to the specified sudirectory or to the
parent directory if”..” is used for <subdir>.