.comment File: WWW .comment .comment Purpose: Client/Server, the Internet, and WWW Paper .comment .comment To print this document, do the following: .comment .comment :run printdoc.pub.robelle;info="QXPORT" .comment .com {ifout starts here} .comment Choose the output device parameters for this document .if outfinal . if outrecord . out(las 30 c1 r+ s7).com Robelle bound version, attached . else . out(las 30 c1 r- s7).com Robelle bound version . endif .elseif outhelpcomp . out(lpt q+ w80).com helpcomp;parm=1 .elseif outa4 . if outlpt . if outrecord . out(lpt s7 r+).com A4 paper, $Stdlist/LP/disc, attached . else . out(lpt s7 r-).com A4 paper, $Stdlist/LP/disc . endif . elseif outlaser . if outrecord . if outdouble . out(las 30 s8 r+ d+).com A4 paper, LaserJet, attached, duplex . else . out(las 30 s8 r+).com A4 paper, LaserJet, attached . endif . else . if outdouble . out(las 30 s8 r- d+).com A4 paper, LaserJet, duplex . else . out(las 30 s8 r-).com A4 paper, LaserJet . endif . endif . else.com No other outxxx jcws specified . out(lpt s7 r-).com generic: A4 paper, $Stdlist/LP/disc . endif .elseif outtext or outhtml . if outrecord . out(lpt s2 u- r+) . else . out(lpt s2 u-) . endif .else . if outlpt . if outrecord . out(lpt s3 r+).com Letter, $Stdlist/LP/disc, attached . else . out(lpt s3 r-).com Letter, $Stdlist/LP/disc . endif . elseif outlaser . if outrecord . if outdouble . out(las 30 s7 r+ d+).com Letter, LaserJet, attached, duplex . else . out(las 30 s7 r+).com Letter, LaserJet, attached . endif . else . if outdouble . out(las 30 s7 r- d+).com Letter, LaserJet, duplex . else . out(las 30 s7 r-).com Letter, LaserJet . endif . endif . else.com No outxxx jcws specified . out(lpt s3 r-).com Letter, generic: $Stdlist/LP/disc . endif .endif .comment .comment Choose the fonts for this document .if outfinal . include final.qlibdata.green .else . include f92286f.qlibdata.robelle .endif .comment .comment Choose the margins for this document .comment .if outhelpcomp . mar(r78) .elseif outa4 . mar(r62) .else . mar(r65) .endif .comment .comment Choose the forms for this document .comment .comment Form 1 is for the body of the manual .comment Form 2 is for unnumbered pages (end of section) .comment Form 3 is for the table of contents (roman numerals) .comment .if outtext or outhtml . form(k1 [L8000] ) . form(k2 [L8000] ) . form(k3 [L8000] ) .elseif outa4 . form(k1 [ T #23 S:40 // l58 / #33 "-" pn:1 "-" /] + [ S #23 T:40 // l58 / #33 "-" pn:1 "-" /]) . form(k2 [ // l58 / #33 pr:3 /]).com Roman numerals . form(k3 [ // l57 // ]) .else . form(k1 [ T #26 S:40 // l55 / #33 "-" pn:1 "-" /] + [ S #26 T:40 // l55 / #33 "-" pn:1 "-" /]) . form(k2 [ // l55 / #33 pr:3 /]).com Roman numerals . form(k3 [ // l54 // ]) .endif .comment .comment Option settings: .comment .comment For text output we want a ragged right edge. .comment .if outtext or outhtml . opt(j4 p+ b+ r-) .else . opt(j4 p+ b+).com Okay to insert four blanks between words .comment when justifying, two spaces after period, .comment suppress blank lines at top of page .endif .comment .comment Other formatting parameters: .par(f` p5 s1 u3) .com Automatic .skip 1.page 5.undent 3 .inp(u~ b@ h\ e& t# f|).com Underline,Blank,Hyphen,Escape,Tab,Font .page.count 1 .com Start page numbering over again. .if not outhtml .form 3 .jump 7 .opt(l- r- f-) `|3Client/Server, the Internet, and WWW| `|1By David J.@Greer| `|1Abstract| .opt Much of the Internet was made possible by client/server computing. The World Wide Web (WWW) is a means of providing hypertext access to the Internet using client/server protocols. The WWW allows you to point at links to text, pictures, music, or video located on servers anywhere in the world and then play the files on your local client PC, workstation or terminal (along with more links to related information). You never need to know where the information is located or learn any obscure commands to access it. This presentation will teach you how the WWW client/server architecture works, how to set up your own WWW server for MPE or HP-UX, and what the differences are among various WWW clients. You will also receive useful tips about how to find information on the Web. David Greer set up Robelle's WWW service and he participates in the development of Lynx, the character-mode WWW client. David is the President of Robelle Consulting Ltd.@and the person in charge of Research and Development for its Qedit and Suprtool products. .skip 7 .opt(l- r- f-) .font 1 Robelle Consulting Ltd. Unit 201, 15399-102A Ave. Surrey, B.C. Canada V3R 7K1 Toll-free: 1-800-561-8311 Phone: (604) 582-1700 Fax: (604) 582-1799 E-mail: david_greer&@robelle.com WWW: http://www.robelle.com .font 0 Copyright Robelle Consulting Ltd.@1995-1996 Permission is granted to reprint this document (but ~not~ for profit), provided that copyright notice is given. .opt.com Stop centering .endif.com if not outhtml .com The next FORM is for Contents/Preface: .form 1 .contents(i+3) .page.count 1 .jump 1 .if outhtml
Copyright Robelle Consulting Ltd.@1995-1996
.else |6http://www.robelle.com/www-paper/overview.html| `|1By David J.@Greer| |6http://www.robelle.com/&~david/welcome.html| .endif `|3Overview| .com.endif .ent `Overview .if outhtml .else . opt .endif .tit World Wide Web .sub Overview The .if outhtml .endif World Wide Web (WWW) .if outhtml .else (|6http://www.w3.org|) .endif is a collection of servers distributed all over the world that respond to various clients. The WWW allows you to click on links to text, pictures, music, or video located on these servers and then to play the selected files on your local client PC, workstation, or terminal, along with more links to related information. You never need to know where the information is located or to learn any obscure commands to access it. .if outhtml
.endif
.com
.endif
.com
.endif
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.com End of point list
.if outhtml
[
Next &|
Robelle
]
.endif
.if not outhtml
.if outhtml
.endif
.ent `Introduction
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub Introduction
The WWW is a new way of viewing information -- and a rather different
one. If, for example, you are viewing this paper as a WWW document,
you will view it with
a browser, in which case you can immediately access hypertext links.
If you are reading this on paper, you will see the links indicated in
parentheses and in a different font. Keep in mind that the WWW is
constantly evolving. We have tried to pick stable links, but sites
reorganize and sometimes they even move. By the time you read the
printed version of this paper, some WWW links may have changed.
.com New sub-section
.if outhtml
.endif
People often think of client/server computing in terms of local area
networks, PCs with graphical user interface capabilities, and
servers with information that is needed by the PC clients.
You do not have to implement client/server computing this way. It
is possible for the same computer to be both the client and
the server. The key point is that there is a communications protocol
that allows two processes (often on different computers) to request
and to respond to demands for services.
.com New sub-section
.if outhtml
.endif
WWW clients use the same technique for other protocols. For example,
if you request a directory at an
.if outhtml
anonymous FTP site,
.else
anonymous FTP site
(e.g., |6ftp://ftp.robelle.com|),
.endif
the WWW client
makes an FTP connection, logs on as an anonymous user, switches to
the directory, requests the directory contents, and then logs off
the FTP server. If you then select a file, the WWW client once
again makes an FTP connection, logs on again, changes directories,
downloads the file, and then logs off. If you use an FTP client to
do the same thing, you would normally log on to the FTP server,
change directories several times, and download one or more files.
Only when you were finished would you log off.
.com New sub-section
.if outhtml
.endif
If you can send network packets to one computer on the Internet,
you can send network packets to any computer on the Internet. This
feature is what makes the Internet so powerful;
it is also what concerns system managers.
If you can send packets to the Internet, it follows that anyone can
send packets to your computer, even the PC on your desktop.
.if outhtml
[
Previous &|
Next &|
Overview &|
Robelle
]
.endif
.if outhtml
.endif
.ent `The Language of the Web
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub The Language of the Web
In order to use the WWW, you must know something about the language
used to communicate in the Web. There are three main components to
this language:
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.com End of point list
.if outhtml
.endif
.if outhtml.com New point
.endif
.if outhtml.com New point
.endif
.com End of point list
.if outhtml
.endif
Each WWW browser renders HTML in its own way. Character-mode
browsers use terminal highlights (e.g., inverse video, dim, or
underline) to show links, bold, italics, and so on. Graphical
browsers use different typefaces, colors, and bold and italic
formats to display different HTML marks. Writers have to remember
that each browser in effect has its own HTML style sheet.
For example, Lynx and Mosaic do not insert a blank
line before unnumbered user lists, but Netscape does.
.if outhtml
.endif
.com
.endif
.com
.endif
.com
.endif
Microsoft has produced a new add-on to Microsoft Word that produces
HTML.
.if outhtml
The Internet Assistant
.else
The Internet Assistant
(|6http://www.microsoft.com/msoffice/freestuf/msword/download/ia/default|)
.endif
is available from Microsoft at no charge. You will need to know
the basic concepts of Microsoft Word to take advantage of the Internet
Assistant.
Since we are not experienced Microsoft Word users, we found that the
Internet Assistant didn't help us much.
.if outhtml
.endif
The HTML area of WWW is changing quickly.
Users do not want to go back to ascii text editing after they've
used WYSIWYG editors
for the last several years.
The Web itself carries a list of
.if outhtml
WYSIWYG HTML editors
.else
WYSIWYG HTML editors
(|6http://www.yahoo.com/Computers/World_Wide_Web/HTML_Editors|)
.endif
for a variety of operating systems.
.if not outhtml.com End of section
. contents
.endif
.com New sub-section
.if outhtml
[
Previous &|
Next &|
Overview &|
Robelle
]
.endif
.if outhtml
.endif
.ent `WWW Clients
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub WWW Clients
You will likely first experience the World Wide Web through a WWW
client. In WWW terms, these are called browsers.
Browsers are available for almost all major computer platforms,
however you also need the appropriate network infrastructure to make
them work.
.if outhtml.com Start of point list
.endif
.if outhtml
.endif
.if outhtml
.endif
Mosaic and Netscape are available for Microsoft Windows, X-Windows, and the
Macintosh, while Microsoft's IE is only available for Microsoft
Windows.
Mosaic and Microsoft IE are free to anyone; Netscape is free to
any not-for-profit institution.
.com
.endif
.com End of point list
.if outhtml
.endif
.if outhtml
.endif
If you dial-in using SLIP (Serial Line IP) or PPP (Point-to-Point
Protocol), your computer becomes part of the Internet, which means it can
send network packets to and from the Internet. In this case, you
can use graphical browsers like Mosaic or Netscape
to access the WWW.
.if outhtml
The Internet Adapter
.else
The Internet Adapter (|6http://marketplace.com/tia/tiahome.html|)
.endif
is supposed to allow users with only shell account access to obtain
a SLIP connection.
.if outhtml
Shiva
.else
Shiva (|6http://www.shiva.com|)
.endif
and
.if outhtml
Livingston
.else
Livingston (|6http://www.livingston.com|)
.endif
provide products that allow users to dial into hosts using
SLIP or PPP.
.if not outhtml
. contents.com Reset indentation for Network Infrastructure
.endif
.com New sub-section
.if outhtml
.endif
.if not outhtml
. contents.com Reset indentation for Character-Mode Browsers
.endif
.com New sub-section
.if outhtml
.endif
While Mosaic is popular, the newer Netscape browser is even more
appealing, especially when used with slower network connections.
Earlier
versions of Mosaic did not display anything until an entire URL
(and its associated graphical images) had been downloaded. Netscape,
by contrast,
starts displaying as soon as a screenful of information is available.
As you page down through a document, Netscape barely pauses as it
continues to download the URL in the background.
.if outhtml
.endif
.com
.endif
.if not outhtml
. contents.com Reset indentation for Graphical Browsers
.endif
.if outhtml
[
Previous &|
Next &|
Overview &|
Robelle
]
.endif
.if outhtml
.endif
.ent `WWW Servers
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub 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.
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.com End of point list
.if outhtml
.endif
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).
.if outhtml
.endif
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 outhtml
.endif
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.
.if outhtml
.endif
.if not outhtml
. contents.com Reset indentation for Why Setup a WWW Server?
.endif
.com New sub-section
.if outhtml
.endif
Consider these things when designing your WWW server:
.if outhtml.com Start unordered list
.endif
.if outhtml.com List item
.endif
.if outhtml.com List item
.endif
.if outhtml.com List item
.endif
.if outhtml.com List item
.endif
.if outhtml.com List item
.endif
.if outhtml.com List item
.endif
.if outhtml.com List item
.else
. mar
.endif
We also suggest that you look at the
.if outhtml
W3 Style Guide.
.else
W3 Style Guide
(|6http://www.w3.org/hypertext/WWW/Provider/Style/Overview.html|).
.endif
.if not outhtml
. contents.com Reset indentation for Why Setup a WWW Server?
.endif
.com New sub-section
.if outhtml
.endif
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.
.if outhtml
.endif
.com
.endif
.com
.endif
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.
.if outhtml
.endif
For example,
.if outhtml
http://www.robelle.com/&~david/welcome.html
.else
(|6http://www.robelle.com/&~david/welcome.html|)
.endif
looks for the file /users/david/public_html/welcome.html on
the Robelle WWW server.
This allows individuals to create and manage their own
WWW files. As a system manager, you may wish to disable this
feature.
.if outhtml
.endif
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
.if outhtml
Weblint
.else
Weblint
(|6http://www.khoros.unm.edu/staff/neilb/weblint.html|)
.endif
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.
.if outhtml
.endif
Weblint is written in
.if outhtml
Perl.
.else
Perl
(|6http://www.cis.ufl.edu/perl|).
.endif
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.
.if outhtml
.endif
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
.if outhtml
statistics
.else
statistics
(|6http://www.robelle.com/server.html|)
.endif
about our WWW service through the
.if outhtml
getstats program.
.else
getstats program
(|6http://www.eit.com/software/getstats/getstats.html|).
.endif
.if outhtml
.endif
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
.if outhtml
Qedit/MPE,
.else
Qedit/MPE
(|6http://www.robelle.com/ftp/changes/qeditmpe.txt|),
.endif
.if outhtml
Qedit/UX,
.else
Qedit/UX
(|6http://www.robelle.com/ftp/changes/qeditux.txt|),
.endif
.if outhtml
Suprtool/MPE
.else
Suprtool/MPE
(|6http://www.robelle.com/ftp/changes/suprtool.txt|)
.endif
and
.if outhtml
Suprtool/UX
.else
Suprtool/UX
(|6http://www.robelle.com/ftp/changes/suprux.txt|)
.endif
are released, they are automatically posted to the
.if outhtml
Robelle FTP Service
.else
Robelle FTP Service
(|6ftp://ftp.robelle.com|)
.endif
.if not outhtml.com End of section
. contents
.endif
.if outhtml
[
Previous &|
Next &|
Overview &|
Robelle
]
.endif
.if outhtml
.endif
.ent `Interesting Places to Visit
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub Interesting Places to Visit
The WWW is a huge place. The following are a few personal
recommendations for sites that we have found interesting or useful. Your
mileage may vary.
.if outhtml
.endif
.if outhtml
.endif
.if outhtml
.endif
.com End of point list
.if outhtml
.endif
.com
.endif
We have found the
.if outhtml
Rec.Travel Library
.else
Rec.Travel Library
(|6http://www.solutions.mb.ca/rec-travel|)
.endif
to be useful. The travel library is based on discussions from the
rec.travel newsgroup.
.if outhtml
.endif
.if outhtml
O'Reilly and Associations
.else
O'Reilly and Associations
(|6http://www.ora.com|)
.endif
publish technical books, especially about UNIX. O'Reilly was one of
the first companies to publish an on-line magazine called
.if outhtml
The Global Network Navigator.
.else
The Global Network Navigator
(|6http://gnn.com/GNNhome.html|).
.endif
Included in GNN, is the
.if outhtml
GNN Travel Center
.else
GNN Travel Center
(|6http://gnn.com/meta/travel/index.html|)
.endif
with current travel information and links to many Internet travel
resources.
.if outhtml
.endif
Internet travel resources tend to be organized into major areas
(e.g., Canada and the US, Europe, Asia). You often have to be
patient when accessing their indexes, since they cover all countries and
cities in an area. Keep in mind that England, Scotland, and Wales are
usually indexed under
.if outhtml
United Kingdom,
.else
|2United Kingdom|,
.endif
which is at the end of
any listing for Europe.
.if not outhtml.com End of section
. contents
.endif
.com New sub-section
.if outhtml
[
Previous &|
Next &|
Overview &|
Robelle
]
.endif
.if outhtml
.endif
.ent `Summary
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub Summary
The World Wide Web demonstrates how powerful
client/server computing can be. If you are thinking of
implementing client/server computing in your organization, it
wouldn't hurt to first take a look at the Web.
.if outhtml
.endif
A WWW server is an application. System managers must
pay attention to
the security and maintenance problems that go
with any large application.
.if outhtml
.endif
Creating Web documents is time consuming. It took me at least
twice as long as I expected to write this paper. I spent a lot of the
time finding and checking the many WWW links. With
our 9600-baud connection to the Internet, this was a slow process.
Tools for creating HTML are still in their infancy. We expect a
lot of new tools to appear in the next year to help create HTML.
.if outhtml
.endif
It's easy to waste time on the Web, but it is one of the largest
and most up-to-date resources available anywhere in the world. Get
an Internet connection, a WWW client program, and start surfing!
.if outhtml
[
Previous &|
Next &|
Overview &|
Robelle
]
.endif
.if outhtml
.endif
.ent `Bibliography
.if outhtml
.else
. opt
.endif
.tit World Wide Web
.sub Bibliography
Here is a short list of books that we have found very useful in
understanding the WWW and in creating our own WWW services.
.com New sub-section
.if outhtml
.endif
This book describes how to write, design, and
publish information on the World Wide Web. In addition to describing
the the HTML language itself, it provides extensive information on
using images, sounds, video, interactivity, gateway programs (CGI),
forms, and imagemaps. Through the use of dozens of real-life examples,
the book helps you not only learn the technical details of writing Web
pages, but also teaches you how to communicate information effectively
through the Web.
.com New sub-section
.if outhtml
.else
. mar
.endif
.if outhtml
[
Previous &|
Overview &|
Robelle
]
.endif
.endif
.if outhtml
.com {toc starts here}
.elseif outtext
. page
.else
. con
. form 3
. tit
. page
. if outdouble or outfinal
. align
. endif
. count 3
. com The next FORM is for Contents/Preface:
. form 2
. jump 6
. if not outfinal
. jump 5
. endif
. opt(l- r- f-).font 3
Client/Server, the Internet, and WWW
. skip 4
Contents
. opt.font 0
. tit |1Contents|
. con (p+ f. m10 c52 l0 r0)
. tit
. page
. form 3
. if outdouble or outfinal
. align
. endif
.endif { else of if outtext }
.check(c1 f0 i1 j0 m1 o1 p1)
.com {toc ends here}
.else
. mar(l+3)
.endif
.if outhtml
.else
. mar
.endif
Jump on board for a ride on the Web. We hope that you'll find enough
information here to join us with your own WWW information.
.if outhtml
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3Introduction|
.if outhtml
The World Wide Web
.else
`|3The World Wide Web|
.box(y+10 h0 t4 c+1).skip 1
.ent The World Wide Web
.con(i+3)
.endif
The WWW project has the potential to do for the Internet what
Graphical User Interfaces (GUIs)
have done for personal computers -- make the Net useful to
end users. The Internet contains vast resources in many fields
of study (not just in computer and technical information). In the
past, finding and using these resources has been difficult.
The Web provides consistency: Servers provide information in a
consistent way and clients show information in a consistent way. To add
a further thread of consistency,
many users view the Web through graphical browsers which are
like other windows (Microsoft Windows, Macintosh windows,
or X-Windows) applications that they use.
A principal feature of the Web is its links between one document and
another. These links, described in the section on hypertext, allow you
to move from one document to another. Hypertext links can point to
any server connected to the Internet and to any type of file.
These links are what transform the Internet into a web.
.if outhtml
A History of the Web
.else
`|1A History of the Web|
.ent A History of the Web
.endif
The Web project was started by Tim Berners-Lee at the
European Particle Physics Laboratory (CERN) in Geneva,
Switzerland. Tim wanted to find a way for scientists
doing projects at CERN to collaborate with each other on-line. He
thought of hypertext as one possible method
for this collaboration.
Tim started the WWW project at CERN in
March 1989.
In January 1992, the first versions of WWW software,
known as Hypertext Transfer Protocol (HTTP), appeared
on the Internet. By October 1993, 500 known
HTTP servers were active. When Robelle joined the Internet in June 1994,
we
were about the 80,000th registered HTTP server. By the end of
1994, it was estimated that there were over 500,000 HTTP servers.
Attempts to keep track of the number of HTTP servers on the Internet
have not been successful.
Programs that try to automatically count HTTP
servers never stop -- new servers are being added
constantly.
.if not outhtml.com End of section
. contents
.endif
.com New sub-section
.if outhtml
On-Line versus Batch
.else
`|3On-Line versus Batch|
.box(y+10 h0 t4 c+1).skip 1
.ent On-Line versus Batch
.endif
This paper is available
on the World Wide Web (on-line)
or as a paper document (batch).
If you are reading this via
.if outhtml
.endif
Robelle's WWW Service,
.if outhtml
.else
(|6http://www.robelle.com|)
.endif
you probably already know how to access the on-line version.
Much of the value of the Web lies in its links
between one document and another.
When you view this paper with a WWW browser, the links are hidden
from you. When you read the text or paper copy of
this paper, you see the links in parentheses. Because links
tend to be long, they do not format well in the text and paper
versions. Since more than half the effort of writing this
paper went into finding and testing the links, we have left them in
the text and printed versions, despite their distracting appearance.
We will describe what the links mean a little later.
.com New sub-section
.if outhtml
What is Hypertext?
.else
`|3What is Hypertext?|
.box(y+10 h0 t4 c+1).skip 1
.ent What is Hypertext?
.endif
Hypertext provides the links between different documents and
different document types. If you have used Microsoft Windows WinHelp
system or the
.if outhtml
.endif
Macintosh
.if outhtml
.else
(|6http://emu.mit.edu/mac_resource.html|)
.endif
hypercard application, you likely know how
to use hypertext.
In a hypertext document, links from one place in the document to
another are included with the text. By selecting a link, you are
able to jump immediately to another part of the document or even
to a different document. In the WWW, links can go not only from
one document to another, but from one computer to another.
.com New sub-section
.if outhtml
Client/Server Computing
.else
`|3Client/Server Computing|
.box(y+10 h0 t4 c+1).skip 1
.ent Client/Server Computing
.endif
The last few years have seen an explosion of information about
client/server computing. For many people, the definition of
client/server is still unclear. We describe it as a method
of distributing applications over one or more computers. A
client is one process that requests services of another process.
These processes can be on different computers or on the same
computer. The processes communicate via a networking protocol.
.if outhtml
The Hypertext Transfer Protocol
.else
`|3The Hypertext Transfer Protocol|
.box(y+10 h0 t4 c+1).skip 1
.ent The Hypertext Transfer Protocol
.endif
When you use a WWW client, it communicates with a WWW server using
the Hypertext Transfer Protocol
.if outhtml
(HTTP).
.else
(HTTP)
(|6http://www.w3.org/pub/WWW/Protocols/|).
.endif
When you select a WWW link,
the following things happen:
.if outhtml.com Start unordered list
.else
. mar(l+3)
.endif
.if outhtml.com List item
.else
. mar
.endif
Compare this with traditional terminal/host computing. Users usually
logon (connect) to the server and remain connected until they logoff
(disconnect). An HTTP connection, on the other hand,
is made only for as long as it takes
for the server to respond to a request. Once the request is
completed, the client and the server are no longer in communication.
.if outhtml
The Internet
.else
`|3The Internet|
.box(y+10 h0 t4 c+1).skip 1
.ent The Internet
.con(i+3)
.endif
The Internet is the world's largest interconnected computer
network. Computers on the Internet communicate using the
Internet Protocol (IP)
and the Transmission Control Protocol (TCP).
You identify
individual computers by their IP-address. This
address is a 32-bit number that is usually represented by four
octets (e.g., 192.40.254.0).
Fortunately, you can usually refer to a computer by its name
.if outhtml
(e.g.,
www.robelle.com).
.else
(e.g., www.robelle.com
(|6http://www.robelle.com|)).
.endif
.if outhtml
Accessing the Internet
.else
`|1Accessing the Internet|
.ent Accessing the Internet
.endif
If you are reading the text or paper version of this paper, you're
probably wondering "How do I get started on the Internet?" It is
much easier to connect an individual PC and a modem to the Internet
than it is to connect a server like an HP 3000 or HP 9000. We
suggest that you find a local Internet access provider to connect your
PC to the Net. Most access providers include everything
you need to log on and start exploring. In addition, several
books on connecting to the Internet also provide all the software
and the telephone numbers of Internet access providers you need to get
started.
Once you're connected to the Internet, you can begin investigating many
of the sites described in this paper. You will also be able to
access and download much of the software needed to create your
own WWW application which, as we discuss further on, can be of help to you,
even if you never plan to connect your servers
to the Internet.
.if not outhtml.com End of section
. contents
.endif
.if outhtml
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3The Language of the Web|
.if outhtml
.else
. mar(l+3)
.endif
.if outhtml
.else
. mar
.endif
.com New sub-section
.if outhtml
Uniform Resource Locators (URLs)
.else
`|3Uniform Resource Locators (URLs)|
.box(y+10 h0 t4 c+1).skip 1
.ent Uniform Resource Locators (URLs)
.con(i+3)
.endif
.if outhtml
Uniform Resource Locators
.else
Uniform Resource Locators
(|6http://www.w3.org/hypertext/WWW/Addressing/URL/Overview.html|)
.endif
(URLs) specify the access-method (how), the
server name (where), and the location (what) needed for a WWW client
to find and access a WWW object.
The general form of a URL is
.if outhtml
.else
.font 5
.endif
access-method://server-name[:port]/location
.if outhtml
.else
.font 0
.endif
.if outhtml
Access Methods
.else
`|1Access Methods|
.ent Access Methods
.endif
The three most popular access methods are
.if outhtml
.else
. mar(l+3)
.endif
.if outhtml.com New point
.else
. mar
.endif
.if outhtml
Server Name
.else
`|1Server Name|
.ent Server Name
.endif
The server name is an IP host name or an IP address. WWW servers
often start with the name "www" as in
.if outhtml
www.robelle.com
.else
www.robelle.com
(|6http://www.robelle.com|)
.endif
or
.if outhtml
www.mayfield.hp.com.
.else
www.mayfield.hp.com
(|6http://www.mayfield.hp.com|).
.endif
The port number is usually not needed. If there
are many servers on one machine (e.g., two different WWW
servers on the same host), you would use a port number to select
one of them. By default, WWW servers are on port 80. Other
protocols have different ports (e.g., the default for FTP is 21).
Most users never need to know about port numbers.
.if outhtml
Welcome Page
.else
`|1Welcome Page|
.ent Welcome Page
.endif
Most WWW servers provide a welcome or home page. This is the
document that you see if you specify a machine name, but
not a document name (see all the examples above under "Server Name").
Good WWW welcome pages provide a short
description of the information the WWW server provides, as well as links
to all the other information available on the server. The
welcome page must be explicitly configured for each WWW server.
If you access a WWW server without giving a document name, and receive
the error message "no document found", you should try one of the
following common document names: welcome.html, index.html,
or default.html.
.if outhtml
Location
.else
`|1Location|
.ent Location
.endif
The location can be a filename, a directory, a directory and
filename, a server-script name, or something specific to the
access-method. Filenames and directory structure often change,
so don't be surprised if a URL that worked a few months ago no
longer works now.
.if not outhtml.com End of section
. contents
.endif
.com New sub-section
.if outhtml
Hypertext Markup Language (HTML)
.else
`|3Hypertext Markup Language (HTML)|
.box(y+10 h0 t4 c+1).skip 1
.ent Hypertext Markup Language (HTML)
.con(i+3)
.endif
When you write documents for WWW, you use the
.if outhtml
Hypertext Markup Language (HTML).
.else
Hypertext Markup Language (HTML).
(|6http://www.ncsa.uiuc.edu/General/Internet/WWW/HTMLPrimerP1.html|}.
.endif
In a markup language, you mix your text with
the marks that indicate how formatting is to take place. Most
WWW browsers have an option to "View Source" that will show you
the HTML for the current document that you are viewing.
.if outhtml
Creating HTML
.else
`|1Creating HTML|
.ent Creating HTML
.endif
Creating HTML is awkward, but not that difficult. The most common
method of creating HTML is to write the raw markup language
using a standard text editor.
If you are creating HTML yourself, we have found the chapter
.if outhtml
Authoring for the Web
.else
|2Authoring for the Web|
.endif
in the
.if outhtml
O'Reilly
.else
O'Reilly
(|6http://www.ora.com|)
.endif
book "Managing Internet Information Services" to be an
excellent resource.
You might also find the
.if outhtml
HTML Quick Reference
.else
HTML Quick Reference
(|6http://kuhttp.cc.ukans.edu/lynx_help/HTML_quick.html|)
.endif
to be useful.
.if outhtml
Common Gateway Interface (CGI)
.else
`|3Common Gateway Interface (CGI)|
.box(y+10 h0 t4 c+1).skip 1
.ent Common Gateway Interface (CGI)
.con(i+3)
.endif
The
.if outhtml
Common Gateway Interface (CGI)
.else
Common Gateway Interface (CGI)
(|6http://hoohoo.ncsa.uiuc.edu/cgi/overview.html|)
.endif
provides a method for WWW servers to invoke other programs. You can
write these programs with any tool or language. They usually
return HTML as their output.
The Robelle
.if outhtml
WWW server statistics
.else
WWW server statistics
(|6http://www.robelle.com/server.html|)
.endif
are provided by a CGI script that runs the
.if outhtml
getstats program.
.else
getstats program
(|6http://www.eit.com/software/getstats/getstats.html|).
.endif
.if outhtml
Forms
.else
`|1Forms|
.ent Forms
.endif
The WWW supports
.if outhtml
simple forms
.else
simple forms
(|6http://www.robelle.com/forms/comments.html|)
.endif
with text boxes, radio buttons,
and pull-down lists.
Forms are processed by CGI scripts.
.if not outhtml.com End of section
. contents
.endif
.if outhtml
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3WWW Clients|
.if outhtml
.else
. mar(l+3)
.endif
.if outhtml
.else
. mar
.endif
.com New sub-section
.if outhtml
Network Infrastructure
.else
`|3Network Infrastructure|
.box(y+10 h0 t4 c+1).skip 1
.ent Network Infrastructure
.con(i+3)
.endif
How you connect to the Internet affects how you view the WWW. If you
connect via a modem, you won't be able to view large WWW
pages, images, sounds, or video; if you have a T1 connection
(1.544M bits/second), you will be able to enjoy these features.
Some WWW pages assume that you have a fast connection
to the Internet.
.if outhtml
Local Area Networks
.else
`|1Local Area Networks|
.ent Local Area Networks
.endif
If your Local Area Network has a gateway to the Internet (there are
several different methods to do this), you should be able to use
a graphical browser on your own workstation to cruise the WWW.
If you are using a PC with Microsoft Windows, you'll need to have a
.if outhtml
Winsock
.else
Winsock (|6http://www.microsoft.com/pages/developer/winsock/default.html|)
.endif
interface installed (in addition to the regular networking
configuration).
Macintosh users already have network support via MacTCP. UNIX
workstation users should also have built-in support for networking.
.if outhtml
Dial-in Access
.else
`|1Dial-in Access|
.ent Dial-in Access
.endif
There are two methods of dialing into a machine to get access to the
Internet. If you dial in and log on as usual (on UNIX you see
"login:" and shell prompt or on MPE you type "HELLO" and get
a colon prompt), your computer is not directly connected to the
Internet, so it cannot send network packets from your PC to the
Internet.
In this case, you will have to use Lynx to access the WWW.
.if outhtml
Character-Mode Browsers
.else
`|3Character-Mode Browsers|
.box(y+10 h0 t4 c+1).skip 1
.ent Character-Mode Browsers
.con(i+3)
.endif
While Lynx is not the only character-mode browser, it is one of the
most powerful.
.if outhtml
Lynx
.else
Lynx (|6ftp://ftp2.cc.ukans.edu/pub/lynx|)
.endif
is available for many platforms.
You can obtain a pre-compiled version of Lynx for MPE/iX from
.if outhtml
jazz.external.hp.com.
.else
(|6http://jazz.external.hp.com/src/www_src/index.html|).
.endif
Some users are disappointed that Lynx's display is limited to text.
What Lynx does demonstrate is that a single server can provide
information to both character-mode and graphical clients. Still, to
gain a full understanding of how powerful the client/server concept
can be, you should compare Lynx's capabilities to the capabilities
of graphical browsers such as Mosaic or Netscape.
.if outhtml
Graphical Browsers
.else
`|3Graphical Browsers|
.box(y+10 h0 t4 c+1).skip 1
.ent Graphical Browsers
.con(i+3)
.endif
Mosaic is one of the tools that makes the WWW so popular.
With Mosaic, you can view in-line graphical images surrounded by
proportional font text in multiple colors.
For an excellent introduction to Mosaic, see the O'Reilly book
.if outhtml
The Mosaic Handbook.
.else
The Mosaic Handbook (|6http://www.ora.com|).
.endif
Three versions of the book
are available (Windows, Macintosh, and X-Windows).
The PC version of Mosaic requires the Win32s subsystem which is
described in the
.if outhtml
Mosaic readme file.
.else
Mosaic readme file
(|6ftp://ftp.ncsa.uiuc.edu/Web/Mosaic/Windows/README.TXT|).
.endif
.if outhtml
External Viewers
.else
`|1External Viewers|
.ent External Viewers
.endif
Neither Mosaic nor Netscape tries to handle all the data
that can potentially
be served up on the Web. They both understand HTML, in-line
graphics, and URLs. Netscape can display external GIF (Graphics
Interchange Format)
files, but Mosaic cannot. To view images, listen to
sound, watch movies, or view spread sheets,
you must have
.if outhtml
external tools
.else
external tools
(|6http://www.ncsa.uiuc.edu/SDG/Software/WinMosaic/viewers.htm|)
.endif
to support
these data formats. For Microsoft Windows users, a popular graphical
viewer is
.if outhtml
LView.
.else
LView (|6ftp://ftp.ncsa.uiuc.edu/PC/Windows/Mosaic/viewers|).
.endif
The Mosaic Handbook provides a good introduction to the external
tools that you need to support full multimedia applications. Most
of these tools also work with Netscape.
.if outhtml
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3WWW Servers|
.if outhtml
.else
. mar(l+3)
.endif
.if outhtml
.else
. mar
.endif
.com New sub-section
.if outhtml
Why Set Up a WWW Server?
.else
`|3Why Set Up a WWW Server?|
.box(y+10 h0 t4 c+1).skip 1
.ent Why Set Up a WWW Server?
.con(i+3)
.endif
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.
.if outhtml
WWW Server Design
.else
`|3WWW Server Design|
.box(y+10 h0 t4 c+1).skip 1
.ent WWW Server Design
.con(i+3)
.endif
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.
.if outhtml
.else
. mar(l+3)
.endif
.if outhtml.com List item
Setting Up A WWW Server
.else
`|3Setting Up A WWW Server|
.box(y+10 h0 t4 c+1).skip 1
.ent Setting Up A WWW Server
.con(i+3)
.endif
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.
.if outhtml
WWW Server Software
.else
`|1WWW Server Software|
.ent WWW Server Software
.endif
W3 maintain a good list of
.if outhtml
WWW server software.
.else
WWW Server software
(|6http://www.w3.org/hypertext/WWW/Daemon/Overview.html|).
.endif
Two of the most popular UNIX WWW server software packages are
.if outhtml
NCSA HTTPD
.else
NCSA HTTPD (|6http://hoohoo.ncsa.uiuc.edu|)
.endif
and
.if outhtml
CERN HTTPD.
.else
CERN HTTPD
(|6http://www.w3.org/hypertext/WWW/Daemon/Status.html|).
.endif
A pre-compiled copy of the NCSA HTTPD software is available
for
.if outhtml
MPE/iX.
.else
MPE/iX
(|6http://jazz.external.hp.com/src/www_src/index.html|).
.endif
.if outhtml
Security
.else
`|1Security|
.ent Security
.endif
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
.if outhtml
MPE WWW Server
.else
MPE WWW Server
(|6http://jazz.external.hp.com/demo.html|)
.endif
includes a demonstration of the NCSA security features.
.if outhtml
Writing HTML
.else
`|1Writing HTML|
.ent Writing HTML
.endif
Once you have the WWW server software running, you need to create
WWW information. WWW documents use the
Hypertext Markup Language (HTML). See the
.if outhtml
HTML description
.else
HTML description
(|6http://www.robelle.com/www-paper/language.html|)
.endif
earlier in this paper for suggestions and tools for writing HTML.
.if outhtml
Host Name
.else
`|1Host Name|
.ent Host Name
.endif
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.
.if outhtml
Robots
.else
`|1Robots|
.ent Robots
.endif
WWW servers on the Internet are often visited by
.if outhtml
robots.
.else
robots
(|6http://web.nexor.co.uk/mak/doc/robots/robots.html|).
.endif
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
.if outhtml
robots.txt
.else
robots.txt
(|6http://web.nexor.co.uk/mak/doc/robots/norobots.html|)
.endif
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.
.if outhtml
Internal WWW Servers
.else
`|1Internal WWW Servers|
.ent Internal WWW Servers
.endif
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
.if outhtml
External Viewers
.else
External Viewers
.endif
in the Clients section of this paper for more information.
.if not outhtml.com End of section
. contents
.endif
.com New sub-section
.if outhtml
Maintaining Your WWW Server
.else
`|3Maintaining Your WWW Server|
.box(y+10 h0 t4 c+1).skip 1
.ent Maintaining Your WWW Server
.con(i+3)
.endif
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.
.if outhtml
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3Interesting Places to Visit|
.if outhtml
.else
. mar(l+3)
.endif
.if outhtml
.else
. mar
.endif
.com New sub-section
.if outhtml
Virtual References
.else
`|3Virtual References|
.box(y+10 h0 t4 c+1).skip 1
.ent Virtual References
.con(i+3)
.endif
.com
Travel Resources
.else
`|3Travel Resources|
.box(y+10 h0 t4 c+1).skip 1
.ent Travel Resources
.con(i+3)
.endif
Curious about a city, a region, or a country? Planning for that big
trip across Europe or Asia? You might first want to check out
one of these travel resources.
.if outhtml
Searching WWW
.else
`|3Searching WWW|
.box(y+10 h0 t4 c+1).skip 1
.ent Searching WWW
.con(i+3)
.endif
Users have invented
.if outhtml
robots
.else
robots
(|6http://web.nexor.co.uk/mak/doc/robots/robots.html|)
.endif
to search the Web for documents. Since searches take
a long time, these robots usually index everything they find into
a database. The server provides the tools to search these databases.
For example,
.if outhtml
InfoSeek,
.else
InfoSeek
(|6http://www2.infoseek.com/|),
.endif
.if outhtml
Lycos,
.else
Lycos
(|6http://lycos.cs.cmu.edu/|),
.endif
.if outhtml
Alta Vista from Digital,
.else
Alta Vista from Digital
(|6http://altavista.digital.com|),
.endif
.if outhtml
WebCrawler Search Database,
.else
WebCrawler Search Database
(|6http://webcrawler.com/|),
.endif
or
.if outhtml
Architext Excite
.else
Architext Excite
(|6http://www.excite.com/query.html")
.endif
are all good. Because these databases are indexed from the entire
WWW, you usually have to qualify your searches in order to find what
you are looking for.
For example, if you search for "travel" you will likely have too
many choices, but if you search for "travel Alaska" the list may
be just what you want.
.com
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3Summary|
.if outhtml
.else
. tit
. sub
. page
. opt(l- r- f-)
.endif
`|3Bibliography|
.if outhtml
Managing Internet Information Services
.else
`|3Managing Internet Information Services|
.box(y+10 h0 t4 c+1).skip 1
.ent Managing Internet Information Services
.endif
.if outhtml
.else
. mar(l+5).opt(f-)
.endif
Managing Internet Information Services
Cricket Liu, Jerry Peek, Russ Jones, Bryan Buus, and Adrian Nye
O'Reilly and Associates, Inc.
ISBN: 1-56592-051-1
.if outhtml
.else
. mar.opt
.endif
If you are managing any Internet information services
(e.g., ftp, gopher, or WWW), you should get this book.
The book includes an excellent primer on writing HTML.
There are
lots of hints on how to setup your own WWW server and extensive
documentation on the NCSA server software for UNIX. The book
also includes examples of CGI scripts.
.com New sub-section
.if outhtml
The Mosaic Handbook
.else
`|3The Mosaic Handbook|
.box(y+10 h0 t4 c+1).skip 1
.ent The Mosaic Handbook
.endif
.if outhtml
.else
. mar(l+5).opt(f-)
.endif
The Mosaic Handbook
Dale Dougherty and Richard Koman
O'Reilly and Associates, Inc.
ISBN: 1-56592-094-5
.if outhtml
.else
. mar.opt
.endif
There are three versions of this book: MS Windows, Macintosh, and
X-windows. The book includes a copy of Enhanced Mosaic. There
is a good explanation of the WWW and how clients and servers work
together. The chapter
.if outhtml
Using Mosaic for Multimedia
.else
|2Using Mosaic for Multimedia|
.endif
includes a description of MIME types, how to configure them, and some
suggests for external viewers. This section of the book would apply
to any graphical browser.
.com New sub-section
.if outhtml
Teach Yourself Web Publishing with HTML in a Week
.else
`|3Teach Yourself Web Publishing with HTML in a Week|
.box(y+10 h0 t4 c+1).skip 1
.ent Teach Yourself Web Publishing
.endif
.if outhtml
.else
. mar(l+5).opt(f-)
.endif
Teach Yourself Web Publishing with HTML in a Week
Laura Lemay
SAMS
ISBN: 0-672-30667-0
.if outhtml
.else
. mar.opt
.endif
This book really does do what the title says.
Here is the description from the author's home page.
.if outhtml
The Whole Internet User's Guide and Catalog
.else
`|3The Whole Internet User's Guide and Catalog|
.box(y+10 h0 t4 c+1).skip 1
.ent The Whole Internet
.endif
.if outhtml
.else
. mar(l+5).opt(f-)
.endif
The Whole Internet User's Guide and Catalog
Ed Krol
O'Reilly and Associates, Inc.
ISBN: 1-56592-063-5
.if outhtml
.else
. mar.opt
.endif
One of the best introductions to the Internet. Ed Krol covers
most major Internet services (e.g., ftp and WWW). He also
includes references to many useful Internet resources.
The appendix
.if outhtml
Getting Connected to the Internet
.else
|2Getting Connected to the Internet|
.endif
discusses the different grades of service and provides a list of
suggested Internet connection providers.
.com New sub-section
.if outhtml
WWW Pointers
.else
`|3WWW Pointers|
.box(y+10 h0 t4 c+1).skip 1
.ent WWW Pointers
.endif
These are the WWW pointers for these books.
.if outhtml.com Start unordered list
.else
. mar(l+3)
.endif
.if outhtml