[ Previous | Next | Overview ]
WWW Servers
WWW servers provide information to the Web. Server software is
available for many computer platforms, but setting up a server isn't
always easy.
- Why Set Up a WWW Server?
-
Even if you don't have an Internet connection, there are lots of uses
for an internal WWW server.
- WWW Server Design
-
Setting up a server to provide information to the many different
Internet clients requires extra thought, but the effort is worth it.
- Setting Up Your WWW Server
-
Server software exits for UNIX, MPE, Windows NT, Microsoft Windows,
and even MS-DOS.
- Maintaining Your WWW Server
-
Like most applications, your WWW server will need a little help from
time to time.
If you have a full-time Internet connection, you might want to set up
a WWW server to provide information about your company, your division,
your group, or yourself. Even if you are not connected to the
Internet, you still might want to set up a server.
Hypertext is a useful way to distribute information because it can
contain mixed text and graphics (or more), as well as links to other
documents. Using WWW servers, you can create sophisticated help
systems without a lot of work. Once established, these systems then
become available to all users on your internal network who have
suitable client software (browsers).
With CGI scripts and e-mail, you can automate forms which you now
process by hand (e.g., expense reports, travel reports, or purchase
requisitions). With some extra work, you could even have the forms
processed directly into a database. You can also design scripts to
look up information in your existing databases and display it for
clients.
If your users are pushing for Microsoft Windows interfaces to all of
their database data, you can use your WWW server as an intermediate
solution. This way users get an immediate graphical interface and
managers can experience the difficulties of managing client/server
configurations.
When you set up a WWW server, keep in mind that many different clients
will be accessing your server. If your server is available on the
Internet, you should not assume that the clients will all have
high-speed Internet connections and graphical browsers.
Consider these things when designing your WWW server:
- Concentrate on your text. Well-written text conveys a lot of
information. If you use text to convey essential information, then
your server will be friendly to text-based clients like Lynx.
- Organize documents the way you would organize a book: gather
information together into chapters; each chapter should describe a
single idea or related topics. Provide navigational tools (like
previous or next chapter) and an overview with a table-of-contents.
We have attempted to have all of these elements in this paper.
- Question each graphical image that you provide. Does the graphic
add meaning to the text or is it just neat? Compare the size of the
graphics file to the size of your text files. If the graphical image
is much larger, does it really add a lot of necessary information?
- If your WWW server is on a fast network, do all the clients have
fast access to your server? You may have a T1 connection (1.544M
bits/sec), but many WWW clients connect via 14.4 modems. Some
commercial Internet providers even charge by the hour, which makes it
more expensive for clients to download large files and graphics. If
your clients have a fast connection to the Internet, you can provide
more graphical information and larger text files without annoying
them. Nevertheless, it's a good idea to keep these limitations in
mind when you're developing your server.
- Try to keep files to
a reasonable size (we suggest three to ten thousand bytes long). When
converting existing documents to HTML, remember that they will often
end up quite large (tens of thousands of bytes). Do clients want to
download such a large file only to find that it is of no interest? The
converse is also true. Can clients download a single file with the
complete text (e.g., this paper), without having to follow all the
hypertext links?
- Hypertext does not mean disorganization.
Provide an index or a table of contents to your web pages, so users
can quickly find information. Provide summaries for long articles and
files.
- Use graphic-design common sense. Use white space to
increase readability. If you use special effects (bold, italics,
underline, horizontal rules, etc), use them sparingly to increase
their effect.
- If your WWW server is available on the
Internet, many visitors will access your server out of curiosity.
Make your welcome page attractive, but clearly identify what
information your WWW server is providing. Of all the files you
publish, be most careful of the size of your welcome page. It will
likely be the most frequently accessed page.
We also suggest that you look at the
W3 Style Guide.
First, you need to decide what computer will host your WWW information
(or you could pick several hosts). If your WWW server will make
information available to many machines, the host must be connected to
your network or the Internet.
While WWW server software is available for a variety of machines, each
server software package runs only on certain operating systems. The
server software you pick will have to be compatible with the host
machine that provides the WWW service.
WWW Server Software
W3 maintain a good list of WWW
server software. Two of the most popular UNIX WWW server software
packages are NCSA HTTPD and
CERN
HTTPD. A pre-compiled copy of the NCSA HTTPD software is
available for MPE/iX.
Windows NT is becoming more popular as a WWW server, largely due to
its built-in networking support and its familiar Windows interface.
Free
Windows NT HTTP Server software is available from the European Microsoft Windows NT Academic
Center. The Robelle Windows
NT WWW Server uses the O'Reilly
Website software. Website comes with comprehensive documentation
-- something other server software is lacking.
Configuration and management is different for each package. We found
the O'Reilly Book Managing Internet
Information Services to be a valuable resource in setting up our WWW
servers. The book is an excellent introduction to HTML, with many
good examples of configurations. Unfortunately, the book only covers
the configuration of the NCSA HTTPD software.
Security
The CERN and NCSA HTTPD packages allow the WWW administrator to
configure security. By default, both packages allow anyone to connect
to your WWW service. However, you can configure the servers to allow
connections only from specific IP addresses (be sure to do this if
your WWW service is for internal use only). You can also password
protect individual files. The MPE WWW Server
includes a demonstration of the NCSA security features.
By default, the CERN and NCSA server software allow individual
directories of hypertext files. If someone specifies a URL with a
directory starting with tilde (~), the server software looks for a
user directory of that name and then searches under the user name for
the directory public_html.
Writing HTML
Once you have the WWW server software running, you need to create WWW
information. WWW documents use the Hypertext Markup Language (HTML).
See the HTML
description earlier in this paper for suggestions and tools for
writing HTML.
Be sure to test your files before adding them to your WWW server. We
test with at least three different browsers (Lynx, Mosaic, and
Netscape). We also use Weblint
on all of our Web documents. Weblint checks for common errors in
HTML. While Weblint isn't perfect, it does help produce HTML that is
acceptable to the widest range of WWW browsers.
Weblint is written in Perl.
To use Weblint, you must have a working copy of Perl. Perl is short
for "Practical Extraction and Report Language". Perl is designed to
be more powerful than the shell, but easier to use than C.
Host Name
If your WWW server is available on the Internet, it's a good idea to
create an alias for the actual computer that hosts your WWW service.
Most people chose "www" as the alias name. This will make it easier
for you to change the host without affecting users of your WWW
service.
Robots
WWW servers on the Internet are often visited by robots.
Robots usually visit Web sites in order to create indexes of the
information that you publish on your WWW server. Since robots can
cause problems for a WWW server, it's a good idea to create a
robots.txt file. This file tells well-behaving robots which parts
of your WWW they should visit. You might want to exclude graphical
images, CGI scripts, and forms from a robot search, but include all
other information about your WWW server.
Internal WWW Servers
If your WWW server will only be available on a Local Area Network, you
have more flexibility in your design. Since users will have
reasonably fast access to the server, you can make your HTML pages
larger. You can also distribute more binary objects, such as
graphics, word-processing documents, and spread sheets. You do have
to remember to configure each client browser with the information on
how to handle each filename suffix (e.g., you might want to associate
".doc" with Microsoft Word). See the section on
External Viewers in the Clients section of this paper for more
information.
Once you have your WWW server working, you need to continue
maintaining it. The Web is changing rapidly. You need to insure that
you obtain newer versions of the HTTPD software from the original
source.
All WWW server software can produce log files. If you do enable log
files (some software has them enabled by default and others not), they
usually grow without bounds. At Robelle, we make a copy of the
current log files once a day and then we empty them. We keep the
daily copies for approximately 60 days. This lets us provide statistics about our
WWW service through the getstats
program.
Because more and more users are joining the Internet, you will likely
want to continue to improve and expand your WWW information. This is
a challenge, since the conversion and authoring tools are not yet well
developed. At Robelle, we have tried to automate some of the
production of our WWW information. For example, when the most recent
change notices for Qedit/MPE,
Qedit/UX,
Suprtool/MPE and Suprtool/UX
are released, they are automatically posted to the Robelle FTP Service