World Wide Web Frequently Asked Questions

This document resides on the World Wide Web on Sunsite (URL is ).

If you are unfamiliar with the term "URL", read on and learn!

Last update: 1/23/95


1: Recent additions and changes to the FAQ

(Up to Table of Contents)

2: Information about this document

This is an introduction to the World Wide Web project, describing the concepts, software and access methods. It is aimed at people who know a little about navigating the Internet, but want to know more about WWW specifically. If you don't think you are up to this level, try an introductory Internet book such as Ed Krol's "The Whole Internet" or "EFF's Guide to the Internet". The latter is available electronically by anonymous FTP from in the directory pub/Net_info/EFF_Net_Guide.

This informational document is posted to news.answers, comp.infosystems.www.users, comp.infosystems.www.providers, comp.infosystems.www.announce, comp.infosystems.www.misc, comp.infosystems.gopher, comp.infosystems.wais and alt.hypertext every four days (please allow a day or two for it to propagate to your site). The latest and best version is always available on the web as , and is mirrored in Japan (URL is ). (see section 3.2, "What is a URL?" to understand what this term means.) If you run a mirror site which automatically mirrors this document, please submit the URL for inclusion in the list of mirrors. Thanks to both Sunsite and Glocom.

This document is also available by anonymous FTP from in the directory pub/bo/boutell/faq.

In addition, the most recently posted version of this document is kept on the news.answers archive on in /pub/usenet/news.answers/www/faq. For information on FTP, send e-mail to with:

send usenet/news.answers/finding-sources
in the body (not subject line) of your message, instead of asking me.

If you want the HTML version but are located behind a firewall, you can acquire it from CERN's WWW email server. Send mail to with the following single line in the body (leave the subject blank):


Thomas Boutell maintains this document. Feedback about it is to be sent via e-mail to

In all cases, regard this document as out of date. Definitive information should be on the web, and static versions such as this should be considered unreliable at best. The most up-to-date version of the FAQ is the version maintained on the web. Please excuse any formatting inconsistencies in the posted version of this document, as it is automatically generated from the on-line version.

(Up to Table of Contents)

3: Elementary questions

3.1: What are WWW, hypertext and hypermedia?

WWW stands for "World Wide Web". The WWW project, started by CERN (the European Laboratory for Particle Physics), seeks to build a distributed hypermedia system.

The advantage of hypertext is that in a hypertext document, if you want more information about a particular subject mentioned, you can usually "just click on it" to read further detail. In fact, documents can be and often are linked to other documents by completely different authors -- much like footnoting, but you can get the referenced document instantly!

To access the web, you run a browser program. The browser reads documents, and can fetch documents from other sources. Information providers set up hypermedia servers which browsers can get documents from.

The browsers can, in addition, access files by FTP, NNTP (the Internet news protocol), gopher and an ever-increasing range of other methods. On top of these, if the server has search capabilities, the browsers will permit searches of documents and databases.

The documents that the browsers display are hypertext documents. Hypertext is text with pointers to other text. The browsers let you deal with the pointers in a transparent way -- select the pointer, and you are presented with the text that is pointed to.

Hypermedia is a superset of hypertext -- it is any medium with pointers to other media. This means that browsers might not display a text file, but might display images or sound or animations.

(Up to Table of Contents)

3.2: What is a URL?

URL stands for "Uniform Resource Locator". It is a draft standard for specifying an object on the Internet, such as a file or newsgroup.

URLs look like this: (file: and ftp: URLs are synonymous.)

The first part of the URL, before the colon, specifies the access method. The part of the URL after the colon is interpreted specific to the access method. In general, two slashes after the colon indicate a machine name (machine:port is also valid).

When you are told to "check out this URL", what to do next depends on your browser; please check the help for your particular browser. For the line-mode browser at CERN, which you will quite possibly use first via telnet, the command to try a URL is "GO URL" (substitute the actual URL of course). In Lynx you just select the "GO" link on the first page you see; in graphical browsers, there's usually an "Open URL" option in the menus.

(Up to Table of Contents)

3.3: What are SGML and HTML?

Documents on the World Wide Web are written in a simple "markup language" called HTML, which stands for Hypertext Markup Language. See section 5.3 for more information about creating HTML documents for use on the web.

SGML is a much broader language which is used to define particular markup languages for particular purposes. HTML is just a specific application of SGML. You can learn more about SGML, and the rationale behind HTML, by reading A Gentle Introduction to SGML (URL is ), a document provided by the Text Encoding Initiative. (Note: Some browsers apparently crash on this URL. There's nothing wrong with the document; try another browser if you have problems.)

(Up to Table of Contents)

3.4: How does WWW compare to gopher and WAIS?

While all three of these information presentation systems are client-server based, they differ in terms of their model of data. In gopher, data is either a menu, a document, an index or a telnet connection. In WAIS, everything is an index and everything that is returned from the index is a document. In WWW, everything is a (possibly) hypertext document which may be searchable.

In practice, this means that WWW can represent the gopher (a menu is a list of links, a gopher document is a hypertext document without links, searches are the same, telnet sessions are the same) and WAIS (a WAIS index is a searchable page, returning a document with no links) data models as well as providing extra functionality.

World Wide Web usage grew far beyond Gopher usage in the last few months, according to the statistics-keepers of the Internet backbone. (Of course, World Wide Web browsers can also access Gopher servers, which inflates the numbers for the latter.) WWW has long since reached critical mass, with new commercial and noncommercial sites appearing daily.

(Up to Table of Contents)

3.5: Are there books about the web?

Yes, quite a few. A brief list follows. New entries are solicited. Please include ISBN numbers and/or ordering information.

The Mosaic Handbook (Mac, Windows and X editions)
>From O'Reilly. A short, sweet guide to the World Wide Web from a Mosaic user's perspective. Mac and Windows versions Include Enhanced NCSA Mosaic on floppy disk; the X Window System version includes NCSA Mosaic on CD-ROM. Telnet or gopher to (log in as gopher) or find details on the web (URL is ). Wherever fine X Window System books and Nutshell Guides are sold.
The World Wide Web Unleashed
>From Sams Publishing. By John December and Neil Randall. Additional chapters contributed by others; I wrote the chapter on HTML editors and filters. Covers both user and provider issues in detail. Supporting pages available on the web (URL is ). 1057 pages. ISBN: 0-672-30617-4. Call 1-800-428-5331 or +1-317-581-3500 for ordering information.
Spinning the Web: How to Provide Information on the Internet
>From Van Nostrand Reinhold. By Andrew Ford. Oriented toward those with an interest in putting their data on the web. ISBN: 1-850-32141-8 (New York), 0-442-01962-9 (London). Available in December 1994.
Teach Yourself Web Publishing with HTML in a Week
>From Sams Publishing. By Laura Lemay. Also oriented toward those who plan to publish materials on the web. ISBN: 0-672-30667-0. 400 pages. Includes information on setting up servers and handling forms results as well as HTML writing and editing. (URL is: ) Available December 22nd, 1994. Call 1-800-428-5331 or +1-317-581-3500 for ordering information.
The HTML Manual of Style
>From Ziff-Davis Press. By Larry Aronson. Chapters: introduction to the WWW, the HTML language, writing HTML documents, and HTML examples. 120 pages. Available in December 1994.
The Internet via Mosaic and World-Wide Web
>From Ziff-Davis Press. By Steve Browne. Details on obtaining Mosaic and Trumpet Winsock, getting it all set up, and what to do with it once it works. A chapter of interesting sites on the Web as well. ISBN: 1-56276-259-1.
MOSAIC Quick Tour
>From Ventana Press. By Gareth Branwyn. A good guide to installing and using NCSA Mosaic under Windows. Includes basic HTML and trouble-shooting chapters. "More hand-holding than the FAQ and gives lots of details." - Mari J. Stoddard
Managing Internet Information Services
From O'Reilly and Associates. By Cricket Liu, Jerry Peek, Russ Jones, Bryan Buus & Adrian Nye. A good choice for those who will be installing and maintaining WWW servers; also includes documentation on HTML, imagemaps and the like. Also covers other types of Internet services.
Hands-On Mosaic: A Guide for Window Users
From Prentice Hall. By Dr. David Sachs & Henry Stair. ISBN: 0-13-172321-9.
HTML Authoring for Fun & Profit
From Prentice Hall. By Mary Morris. Jan 1995. ISBN: 0-13-359290-1.
NCSA Mosaic Handbook
From Prentice Hall. By Amy K. Kreiling & Frank Baker. Jan 1995. ISBN: 0-13-196692-8.
Plug-n-Play Mosaic for Windows
From Sams. By Angela Gunn. ISBN 0-672-30627-1. 300 pages. Disks include a special version of Enhanced NCSA Mosaic for Windows with built-in TCP/IP Winsock and dialer, and an automated configuration program (hence "plug-n-play"). The book is an introduction to Mosaic and the Web with some coverage of creating a home page and HTML and, of course, the obligatory directory of Web sites.
Using Mosaic
From Que. Ed. by Que Development Group. ISBN: 0-7897-0021-2. Covers NCSA Mosaic for Windows and the Macintosh.
Using the World Wide Web
From Que. Ed. by Que Development Group. ISBN: 0-7897-0016-6.
Mosaic User's Guide
From MIS Press. By Bryan Pfaffenberger. ISBN: 1-55828-409-5.
Using Mosaic for Windows
From Electric Avenue Press. By Stephen Gauer. ISBN: 0-969-8853-0-X.

(Up to Table of Contents)

4.1: Introduction: how can I access the web?

You have three options: use a browser on your own machine (the best option), use a browser that can be telnetted to (not as good), or access the web by email (the least attractive, but for some it's the only way). It is always best to run a browser on your own machine, unless you absolutely cannot do so; but feel free to telnet to a browser for your first look at the web, or use email if the telnet command does not work on your system (try it first!). Note that "your machine" can be defined as a system you dial into from home, such as netcom or another account provider. Running a text-based browser on such a system is still preferable to telnetting to a faraway site.

The following sections cover telnetting to a browser and obtaining your own browser; if neither of these are possible for you (because you have only an email-and-news connection to the Internet), here is how to access a web page by email:

Send email to (preferred) or to (older address if the first fails) containing the following single line. (What you put on the subject line doesn't matter; blank is OK. This line should go in the text of the message.) You will receive as a reply a simple page intended to help you learn more about the Web.


(Up to Table of Contents)

4.2: Browsers accessible by telnet

An up-to-date list of these is available on the Web as and should be regarded as an authoritative list.
A telnettable browser provided by the W3 coalition.
Offers Lynx, a full screen browser which requires a vt100 terminal. Log in as www. Does not allow users to "go" to arbitrary URLs, so GET YOUR OWN COPY of Lynx and install it on your system if your administrator has not done so already. The best plain-text browser, so move mountains if necessary to get your own copy of Lynx!
(or telnet Log in as www. A full-screen browser in New Jersey Institute of Technology. USA.
A dual-language Hebrew/English database, with links to the rest of the world. The line mode browser, plus extra features. Log in as www. Hebrew University of Jerusalem, Israel.
Slovakia. Has a slow link, only use from nearby.
(or telnet Log in as www. Offers several browsers, including Lynx (goto option is disabled there also).
Hungary. Has slow link, use from nearby. Login is as www.
(Up to Table of Contents)

4.3: Obtaining browsers

The preferred method of access of the Web is to run a browser yourself. Browsers are available for many platforms, both in source and executable forms. Here is a list generated from the authoritative list, .

(Up to Table of Contents)

4.3.1: Microsoft Windows browsers

NOTE: Most of these browsers require that you have SLIP, PPP or other TCP/IP networking on your PC. The sole exception is SlipKnot, which has limited features but operates well without a proper Internet connection. SLIP or PPP can be accomplished over phone lines. You can do this one of two ways: using a proper SLIP account, which requires the active cooperation of your network provider or educational institution, or using The Internet Adapter (section 4.12), a product which simulates SLIP through your dialup Unix shell account. If you only have non-Unix based dialup shell access, or have no PC at home, your best option at this time is to run Lynx on the VMS (or Unix, or...) system you call, or telnet to a browser if you cannot do so.

Browser from Cornell LII. Available by anonymous FTP from in the directory /pub/LII/cello.
Mosaic for Windows
From NCSA. Available by anonymous FTP from in the directory PC/Windows/Mosaic.
From EINet. Available by anonymous FTP from in the directory /einet/pc/winweb as the file
From Netscape Communications Corp (URL is: ). Downloads and displays images incrementally while you read pages, which also display incrementally, making it the best browser at the time of this writing for those who connect to the web via modems. Also supports many extensions to HTML, although not all conform to the proposed standard. Netscape is a commercial product but can be evaluated free of charge for an unlimited period of time by individuals. Netscape supports some of the official extended HTML tags as well as its own variations. The 16-bit version works under both OS/2 and Windows. Available by anonymous FTP from the following sites (use the mirror closest to you; see the URL above for the latest list):
Spry Mosaic
From Spry. Available by anonymous FTP from in the directory AirMosaicDemo as the file AMOSDEMO.EXE. Spry Mosaic is a commercial product but a demonstration version is available and can be registered inexpensively. Works under Windows and OS/2. Supports the mailto: URL, transparent GIFs, ALT tags, hierarchical hotlists, etc.
From Booklink. Available by anonymous FTP from in the directory lite; this is a demonstration version of the full browser, which costs $99. Booklink can open many simultaneous connections in different windows and display images and pages progressively; at the time of this writing it is the only browser to equal Netscape in this area. The "lite" version can only open two simultaneous connections, however.
SlipKnot is the only graphical WWW browser that operates entirely without SLIP, PPP, an Ethernet connection, or special server-side software (but consider TIA, section 4.12 for another workaround). SlipKnot supports multiple fonts, inline images, and review of documents you have already received while new documents arrive, and it operates entirely through your regular Unix shell account. SlipKnot does not require that you install any new software on your Unix shell account. (However, it is lacking certain important features as a result, such as forms and validation; this will keep you from accessing some web pages. SlipKnot does support the <ISINDEX> tag, which many sites support as a simpler alternative to forms.) You can obtain SlipKnot by anonymous FTP from in the directory pub/pbrooks/slipknot or from in the directory SimTel/win3/internet. For more information, see the SlipKnot information page (URL is ) or send a blank email message to
IBM OS/2 WebExplorer
A native IBM OS/2 web browser. WebExplorer is a multithreaded application and replaces the usual "back" and "forward" buttons with a visual map of your exploration of the web. IBM WebExplorer can be acquired by anonymous FTP from in the directory pub/WebExplorer/ .

(Up to Table of Contents)

4.3.2: MSDOS browsers

NOTE: These browsers require that you have SLIP, PPP or other TCP/IP networking on your PC. SLIP or PPP can be accomplished over phone lines. You can do this one of two ways: using a proper SLIP account, which requires the active cooperation of your network provider or educational institution, or using The Internet Adapter (section 4.12), a product which simulates SLIP through your dialup Unix shell account. If you only have non-Unix based dialup shell access, or have no PC at home, your best option at this time is to run Lynx on the VMS (or Unix, or...) system you call, or telnet to a browser if you cannot do so.

DosLynx is an excellent text-based browser for use on DOS systems. You must have a level 1 packet driver, or an emulation thereof, or you will only be able to browse local files; essentially, if your PC has an Ethernet connection, or you have SLIP, you should be able to use it. DosLynx can view GIF images, but not when they are inline images (as of this writing). See the README.HTM file at the DosLynx site for details. You can obtain DosLynx by anonymous FTP from in the directory pub/WWW/DosLynx; the URL is
(Up to Table of Contents)

4.3.3: Macintosh browsers

NOTE: These browsers require that you have SLIP, PPP or other TCP/IP networking on your PC. SLIP or PPP can be accomplished over phone lines. You can do this one of two ways: using a proper SLIP account, which requires the active cooperation of your network provider or educational institution, or using The Internet Adapter (section 4.12), a product which simulates SLIP through your dialup Unix shell account. If you only have non-Unix based dialup shell access, or have no PC at home, your best option at this time is to run Lynx on the VMS (or Unix, or...) system you call, or telnet to a browser if you cannot do so.

Mosaic for Macintosh
From NCSA. Full featured. Available by anonymous FTP from in the directory Mac/Mosaic.
From Netscape Communications Corp (URL is: ). Downloads and displays images incrementally while you read pages, which also display incrementally, making it the best browser at the time of this writing for those who connect to the web via modems. Also supports many extensions to HTML, although not all conform to the proposed standard. Netscape is a commercial product but can be evaluated free of charge for an unlimited period of time by individuals. Available by anonymous FTP from the following sites (use the mirror closest to you; see the URL above for the latest list):
From CERN. Basic. Available by anonymous FTP from in the directory /ftp/pub/www/bin as the file mac.
From EINet. Has features that Mosaic lacks; lacks some features that Mosaic has. Available by anonymous FTP from in the directory einet/mac/macweb.

(Up to Table of Contents)

4.3.4: Amiga browsers

Browser for AmigaOS, based on NCSA's Mosaic. Supports older Amigas as well as the newer machines in the latest versions; available for anonymous ftp from in the directory /pub/amosaic, or from aminet sites in /pub/aminet/comm/net. see the site for details. See the URL .
The Emacs-W3 browser works under Gnu Emacs on the Amiga (see section 4.3.7).
(Up to Table of Contents)

4.3.5: NeXTStep browsers

Note: NeXTStep systems can also run X-based browsers using one of the widely used X server products for the NeXT. The browsers listed here, by contrast, are native NeXTStep applications.

A brand-new (as of 12/94), multithreaded, graphical browser for NeXTStep. Available by anonymous FTP from in the directory pub/software.
A World Wide Web browser for NeXTStep. The URL for more information is; you can ftp the package from in the /pub/software/ directory.
WorldWideWeb, CERN's NeXT Browser-Editor
A browser/editor for NeXTStep. Currently out of date; editor not operational. Allows wysiwyg hypertext editing. Requires NeXTStep 3.0. Available for anonymous FTP from in the directory /pub/www/src.
(Up to Table of Contents)

4.3.6: X/DecWindows (graphical UNIX, VMS) browsers

NCSA Mosaic for X
Unix browser using X11/Motif. The original multimedia browser. Full http 1.0 support including PUT-method forms, image maps, etc. Recent beta versions have limited support for tables. Available by anonymous FTP from in the directory Mosaic.
NCSA Mosaic for VMS
Browser using X11/DecWindows/Motif. For the VMS operating system. Full http 1.0 support including PUT-method forms, image maps, etc. Probably the best browser available for VMS. Available by anonymous FTP from in the directory Mosaic.
From Netscape Communications Corp (URL is: ). Downloads and displays images incrementally while you read pages, which also display incrementally, making it the best browser at the time of this writing for those who connect to the web via modems. Also supports many extensions to HTML, although not all conform to the proposed standard. Netscape is a commercial product but can be evaluated free for an indefinite period of time by individuals. use by individuals. Version 0.9 (available to the Available by anonymous FTP from the following sites (use the mirror closest to you; see the URL above for the latest list):
Quadralay GWHIS Viewer (Commercial Mosaic)
Quadralay offers a commercial-grade (not free!) version of Mosaic for Unix systems, with Windows and Macintosh versions expected in the future. (URL is:
tkWWW Browser/Editor for X11
Unix Browser/Editor for X11. (Beta test version.) Available for anonymous ftp from in the directory tkwww[extension] (followed by an extension possibly dependent on the current version). Please ftp to the site and look for the latest version (or use the link above). Supports WSYIWYG HTML editing.
MidasWWW Browser
A Unix/X browser from Tony Johnson. (Beta, works well.)
Viola for X (Beta)
Viola has two versions for Unix/X: one using Motif, one using Xlib (no Motif). Handles HTML Level 3 forms and tables. Has extensions for multiple columning, collapsible/expandable list, client-side document include. Available by anonymous FTP from in /pub/www/viola. More information available at the URL
Unix/X Browser using Athena (doesn't require Motif). Supports forms, inline images, etc.; closest to Mosaic in feel of the non-Motif X11 browsers. Available for anonymous FTP from in the directory /pub/chimera.
Emacs w3 mode
The Emacs w3 mode supports multiple fonts, color, inline images, movies, and the whole nine yards when run under a graphical version of emacs; see section 4.3.7.
Arena's primary purpose is to be a testbed for HTML Level 3 documents. As a result, Arena supports many of the new and interesting features of HTML Level 3. As of this writing it is still in prerelease and expectations should be set accordingly! Available by anonymous FTP from in the directory pub/www/arena/ .
(Up to Table of Contents)

4.3.7: Text-mode Unix and VMS browsers

These are text-based browsers for Unix (and in some cases also VMS) systems. In many cases your system administrator will have already installed one or more of these packages; check before compiling your own copy.

Line Mode Browser
This program gives W3 readership to anyone with a dumb terminal. A general purpose information retrieval tool. Available by anonymous ftp from in the directory /pub/www/src.
The "Lynx" full screen browser
This is a hypertext browser for vt100s using full screen, arrow keys, highlighting, etc. Available by anonymous FTP from
Tom Fine's perlWWW
A tty-based browser written in perl. Available by anonymous FTP from in the directory pub/w3browser as the file w3browser-0.1.shar.
Dudu Rashty's full screen client based on VMS's SMG screen management routines. Available by anonymous FTP from in the directory www/www_client.
Emacs w3-mode
A WWW browser for emacs. Runs under Xwindows, NeXTstep, VMS, OS/2, Windows NT, Windows 3.1, AmigaDOS, or just about any Unix system. Also has fonts, color, inline images, and mouse support if using Lemacs, Epoch, or Emacs 19. Also works in local mode under DOS and on the Macintosh. Available by anonymous ftp from in the directory pub/elisp/w3.

(Up to Table of Contents)

4.3.8: VM/CMS Browsers

A WWW browser for the VM/CMS operating system. Available by anonymous FTP from in the directory pub/vm/www/.

(Up to Table of Contents)

4.3.9: Batch-Mode "Browsers"

Batch mode browser
A batch-mode "browser", url_get, which is available through the URL . It can be retrieved via anonymous FTP to, as the file /pub/zippy/url_get.tar.Z. This package is intended for use in cron jobs and other settings in which fetching a page in a command-line fashion is useful.
(Up to Table of Contents)

4.4: How can I access the web through a firewall?

A "proxy server" is a specialized HTTP server which (typically) runs on a firewall machine, providing access to the outside world for people inside the firewall. The CERN httpd can be configured to run as a proxy. Furthermore, it is able to perform caching of documents, resulting in faster response times.

If you cannot arrange to run a proxy server (definitely the recommended approach), read on:

For information on using NCSA Mosaic from behind a firewall, please read the following. In general, browsers can be made useful behind firewalls through the use of a package called "SOCKS"; the source must be modified slightly and rebuilt to accommodate this. Whenever possible, work with your network administrators to solve the problem, not against them.

An excerpt from the NCSA Mosaic FAQ:

NCSA Mosaic requires a direct internet connection to work, but some folks have put together a package that works behind firewalls. This is completely unsupported by NCSA, but here is the latest announcement:

November 15, 1993: C&C Software Technology Center (CSTC) of NEC Systems Lab has made available a version of SOCKS, a package for running Internet clients from behind firewalls without breaching security requirements, that includes a suitably modified version of Mosaic for X 2.0. Beware: such a version is not supported by NCSA; we can't help with questions or problems arising from the modifications made by others. But, we encourage you to check it out if it's interesting to you. Questions and problem notifications can be sent to Ying-Da Lee (

(Up to Table of Contents)

4.5: What is on the web?

Currently accessible through the web:

(Up to Table of Contents)

4.5.1: How do I find out what's new on the web?

The newsgroup comp.infosystems.www.announce carries announcements of new resources on the World Wide Web. Since newsgroups are distributed, it can be accessed reliably even when the net is very busy.
What's New With NCSA Mosaic
The unofficial newspaper of the World Wide Web is What's New With NCSA Mosaic (URL is ), which carries announcements of new servers on the web and also of new web-related tools. This should be in your hot list if you're not using Mosaic (which can access it directly through the help menu).
You can also check out the newsgroup, which carries WWW announcements and many other Internet-related announcements.

(Up to Table of Contents)

4.5.2: Where is the subject catalog of the web?

There are several. There is no mechanism inherent in the web which forces the creation of a single catalog (although there is work underway on automatic mechanisms to catalog web sites). The best-known catalog, and the first, is The WWW Virtual Library (URL is ), maintained by CERN. The Virtual Library is a good place to find resources on a particular subject, and has separate maintainers for many subject areas.

There is also a newer cataloging system called ALIWEB that requires very little effort to maintain and is growing rapidly (URL is ).

(Up to Table of Contents)

4.5.3: How can I search through ALL web sites?

Several people have written robots which create indexes of web sites -- including sites which have not arranged to be mentioned in the newspapers and catalogs above. (Before writing your own robot, please read the section on robots.)

Here are a few such automatic indexes you can search:

You can read about other robots in the robots section.

(Up to Table of Contents)

4.6: How can I save an inline image to disk?

Here are two ways:

1. Turn on "load to local disk" in your browser, if it has such an option; then reload images. You'll be prompted for filenames instead of seeing them on the screen. Be sure to shut it off when you're done with it.

2. Choose "view source" and browse through the HTML source; find the URL for the inline image of interest to you; copy and paste it into the "Open URL" window. This should load it into your image viewer instead, where you can save it and otherwise muck about with it.

(Up to Table of Contents)

4.7: How can I get sound from the PC speaker with WinMosaic?

This piece of wisdom donated by Hunter Monroe:

This section explains how to install sound on a PC which already has a working version of Mosaic for Microsoft Windows. Be warned in advance that the results may be poor.

To get Mosaic to produce sound out of the PC speaker, first, you need a driver for the speaker. You can get the Microsoft speaker driver from the URL or by doing an Archie search to find it somewhere else. SPEAK.EXE is a self-extracting file. Copy the speak.exe file to a new directory, and then type "SPEAK" at the DOS prompt. Do not put the file SPEAKER.DRV in a separate directory from OEMSETUP.INF.

Now, you need to install the driver. In Windows, from the Program Manager choose successively Main/Control Panel/Drivers/Add/Unlisted or updated drivers/(enter path of SPEAK.EXE)/PC Speaker. At this point some strange sounds come out as the driver is initialized. Change the settings to improve the sound quality on the various sounds: tada, chimes, etc. Click OK when you are finished and choose the Restart windows option.

Having installed the speaker driver, you will now get sounds whenever you start Windows, make a mistake, or exit Windows. If you do not want this, from the Main/Control Panel/Sounds menu, make sure there is no X next to "Enable System Sounds."

Now, you need a sound viewer program that Mosaic can call to display sounds. NCSA unfortunately recommend WHAM, which does not work well with a PC speaker. Get the program WPLANY instead. You can find a copy nearby with an Archie search on the string "wplny"; the current version is WPLNY09B.ZIP. For details on archie and other basic issues related to FTP, please read the Usenet newsgroup news.announce.newusers.

Move the zip file to a new directory, and use an unzip program like pkunzip to unzip it, producing the files WPLANY.EXE and WPLANY.DOC. Then edit the MOSAIC.INI file to remove the "REM" before the line "TYPE9=audio/basic". Then, you need lines in the section below that read something like: audio/basic="c:\wplany\wplany.exe %ls" audio/wav="c:\wplany\wplany.exe %ls" where you have filled in the correct path for wplany.exe. The MOSAIC.INI file delivered with Mosaic may have NOTEPAD.EXE on the audio/basic line, but this will not work. Now, restart Mosaic, and you should now be able to produce sounds. To check this, with Mosaic choose File/Local File/\WINDOWS\*.WAV and then try to play TADA.WAV. Then, you might try the Mosaic Demo document for some .AU sounds, but you are lucky if your speaker produces something you can understand.

(Up to Table of Contents)

4.8: I have a Windows PC or Macintosh. Why can't I access WAIS URLs?

This answer provided by Michael Grady (

The version of Mosaic for X has "wais client" code built-in to it. This was relatively easy for the developers to do, because there was already a set of library routines for talking to WAIS available for Unix as "public domain" (freeWAIS). I don't think there is such a library of routines for PC/Windows or Mac, which would make it much more difficult for the Mosaic versions for Windows and the Mac to add "wais client" capability. Therefore, at least for now, neither the Windows or Mac versions of Mosaic support direct query of a WAIS server (i.e. can act as wais clients themselves).

(Up to Table of Contents)

4.9: I'm running XMosaic. Why can't I get external viewers working...

... No matter what no matter what I do to my .mailcap and .mime.types files?

Answer provided by Ronald E. Daniel (

Mosaic only looks at the .mime.types file if it has no idea what the document's type is. This is actually a very rare situation. Essentially all servers now use the HTTP/1.0 protocol, which means that they tell Mosaic (or other browsers) what the document's MIME Content-type is. The servers use a file very much like Mosaic's .mime.types file to infer the Content-type from the filename's extension.

It is pretty simple to find out if this really is the problem. Use telnet to talk to the server and find out if it is assigning a MIME type to the document in question. Here's an example, looking at the home page for my server. (idaknow: is my shell prompt)

  idaknow: telnet 80  // Connect to the httpd server
  Trying ...
  Connected to
  Escape character is '^]'.
  HEAD /Home.html  HTTP/1.0             // replace Home.html  with your document
                                       // you supply the blank line
  HTTP/1.0 200 OK                      // the rest of this comes from the server  Date: Wednesday, 25-May-94 19:18:11 GMT
  Server: NCSA/1.1
  MIME-version: 1.0
  Content-type: text/html              // Here's the MIME Content-type
  Last-modified: Monday, 16-May-94 16:21:58 GMT
  Content-length: 1727

  Connection closed by foreign host.
In the example above, /Home.html will get .

Normally servers will be configured to supply a Content-type of text/plain if they don't know what else to do. If this is the problem you are having, take a look at the TypesConfig documentation for NCSA's httpd. You can have the server look at the filename extension, supply the correct Content-type, then use your local .mailcap file to tell Mosaic what viewer to use to look at the document.

Russ Segal adds:
The answer from Ronald Daniel is essentially correct, but it needs a small addendum.

When starting Moasic, you can specify a "fileProxy" which will fetch files for you:

"*fileProxy: http://socks/"

If you do this, file: URLs are no longer strictly local accesses. So even if the URL is not fttp:, the proxy server must be upgraded as Mr. Daniel suggests.

(Up to Table of Contents)

4.10: Hey, I know, I'll write a WWW-exploring robot! Why not?

Programs that automatically traverse the web can be quite useful, but have the potential to make a serious mess of things. Robots have been written which do a "breadth-first" search of the web, exploring many sites in a gradual fashion instead of aggressively "rooting out" the pages of one site at a time. Some of these robots now produce excellent indexes of information available on the web.

But others have written simple depth-first searches which, at the worst, can bring servers to their knees in minutes by recursively downloading information from CGI script-based pages that contain an infinite number of possible links. (Often robots can't realize this!) Imagine what happens when a robot decides to "index" the CONTENTS of several hundred mpeg movies. Shudder.

The moral: a robot that does what you want may already exist; if it doesn't, please study the document World Wide Web Robots, Wanderers and Spiders (URL is: ) and learn about the emerging standards for exclusion of robots from areas in which they are not wanted. You can also read about existing robots there.

(Up to Table of Contents)

4.11: How do I send newsgroup posts in HTML to my web client?

How to do this depends greatly on your system; if you have a Mac or Windows system, the answer is completely different. But, as food for thought, here is a simple shell script I use on my Unix account to send posts from rn and related newsreaders to Lynx. Put this text in the file "readwebpost" and use the "chmod" command to make it executable, then put it somewhere in your path (such as your personal bin directory):
echo \<PRE\> > .article.html 
cat >> .article.html 
echo \</PRE\> >> .article.html 
lynx .article.html  < /dev/tty
rm .article.html 
Then add the following line to your .rnmac file (create it if you don't already have one):
W     |readwebpost %C
Now, when you press "W" while reading a post in rn, a message will be sent to Lynx, and the links enclosed in it will be live.

Larry W. Virden provides the following version which invokes Mosaic instead, and is also capable of communicating with an already-running copy of Mosaic instead of launching another. (You can use the same rn macro as above, invoking "goto-xm" instead of "readwebpost".) Read the comments for details on the assumptions made by the script.

#! /bin/sh
# goto-xm, by Joseph T. Buck <>
# Modified heavily by Larry W. Virden <>
# Script for use with newsreaders such as trn.  Piping the article
# through this command causes xmosaic to pop up, pointing to the
# article.  If an existing xmosaic (version 1.1 or later) exists,
# the USR1 method will be used to cause it to point to the correct
# article, otherwise a new one will be started.

# assumptions: ps command works as is on SunOS 4.1.x, may need changes
# on other platforms.

URL=`/bin/grep '^Message-ID:' | /bin/sed -e 's/.*</news:/' -e 's/>.*//'`
if [ "X$URL" = "X" ]; then
        echo "USAGE: $0 [goto] [once] < USENET_msg" >&2
        exit 1

pid=`ps -xc | egrep '[Mm]osaic' | awk 'NR == 1 {print $1}'`
p=`which Mosaic`

$p "$URL" &

if      [ "$#" -gt 0 ] ; then
  if    [ "$1" = "goto" -o "$1" = "same" ] ; then
        echo "goto"   > $gfile
        echo "newwin" > $gfile
        echo "newwin" > $gfile
/bin/awk 'END { printf "'"$URL"'" }' </dev/null >> $gfile

trap "echo signal encountered" 30
kill -USR1 $pid

exit 0

See also MosaicMail (URL is ), a Perl script which pipes email and/or news to your current Mosaic session.

(Up to Table of Contents)

4.12: I can't get SLIP. I want Mosaic. Is there a way?

YES! If you have a plain old Unix shell account on a Unix system, such as a SunOS or Ultrix system, you can do one of two things: you can run SlipKnot, a special browser which operates using programs that may already be installed on your shell account (see section 4.3.1), or you can run The Internet Adapter (TIA), a program which provides a pseudo-SLIP connection. The remainder of this section focuses on TIA.

TIA is not free software, but there is a free two-week trial period and it is very cheap to register.

"So what do I run on my machine at home?"

Exactly the same software you would use for real SLIP; as far as your PC is concerned, it is a SLIP connection. If you're unfamiliar with SLIP please check out a newsgroup relevant to your particular type of PC (Windows, Mac, etc). (This isn't restricted to common systems; because all the emulation happens on your Unix shell account, your client machine can run anything that supports SLIP.)

"Details, please! I'm confused."

Check out the TIA home page (URL is ), or send email to and request details about TIA.

If you have a Macintosh, check out the Macintosh TIA Users' FAQ (URL is: ) for additional help.

(Up to Table of Contents)

5.1: How can I provide information to the web?

Information providers run programs that the browsers can obtain hypertext from. These programs can either be WWW servers that understand the HyperText Transfer Protocol HTTP (best if you are creating your information database from scratch), "gateway" programs that convert an existing information format to hypertext, or a non-HTTP server that WWW browsers can access -- anonymous FTP or gopher, for example.

To learn more about World Wide Web servers, you can consult a www server primer by Nathan Torkington, available at the URL .

If you only want to provide information to local users, placing your information in local files is also an option. This means, however, that there can be no off-machine access.

(Up to Table of Contents)

5.2: Obtaining Servers

Servers are available for Unix, Macintosh, MS Windows, Windows NT, OS/2, and VMS systems. If you know of a server for another operating system, please contact me.

See for more information on writing servers and gateways in general.

(Up to Table of Contents)

5.2.1: Unix Servers

NCSA httpd
NCSA has released a server, known as the NCSA httpd; it is available at the URL .
EIT httpd
EIT has created the Webmaster's Starter Kit, which installs their WWW server on your system via the web through a painless forms interface. Recommended for those unfamiliar with server installation. You can learn more about the starter kit and the EIT httpd at the starter kit site (URL is ).
CERN httpd
CERN's server is available for anonymous FTP from (URL is ) and many other places. Use your local copy of archie to search for "www" in order to find a nearby site.
GN Gopher/HTTP server
The GN server is unique in that it can serve both WWW and Gopher clients (in their native modes). This is a good server for those migrating from Gopher to WWW, although it does not have the server-side-script capabilities of the NCSA and CERN servers. See the URL
Perl server
There is also a server written in the Perl scripting language, called Plexus, for which documentation is available at the URL .
WN Server
The WN Server, available at the URL , is designed with an emphasis on security and flexibility, and takes a different approach from the NCSA and CERN servers. It provides text searching facilities as a standard feature.
(Up to Table of Contents)

5.2.2: Macintosh Servers

There is a server for the Macintosh, MacHTTP, available at the URL .

(Up to Table of Contents)

5.2.3: MS Windows, IBM OS/2 and MS Windows NT Servers

HTTPS (Windows NT)
HTTPS is a server for Windows NT systems, both Intel and Alpha -- based. It is available via anonymous FTP from in the directory pub/https (URL is (Be sure to download the version appropriate to your processor.) You can read a detailed announcement at the FTP site, or by using the URL

A professional version is also available (URL is ).

NCSA httpd for Windows
The NCSA httpd for Windows has most of the features of the Unix version, including scripts (which generate pages on the fly based on user input). It is available by anonymous FTP from the ftp site in the directory pub/win-httpd, and documentation can be found at the URL .
A simple, effective server for Windows writtten by Gustavo Estrella. Available by anonymous ftp from (or one of its mirror sites, such as, as the file, in the directory /pub/pc/win3/winsock.

There is also a Windows NT version of SerWeb, available by anonymous FTP from as /pub/serweb/

Another Windows-based server, available by anonymous FTP from as /pub/net/winsock/
An OS/2 server, written by Frankie Fan. See the home page (URL is ) for details, or fetch the package by anonymous FTP from in the directory pub/kf/kfan.
(Up to Table of Contents)

5.2.4: MSDOS and Novell Netware Servers

KA9Q NOS (nos11c.exe) is a internet server package for DOS that includes HTTP and Gopher servers. It can be obtained via anonymous FTP from one of the following sites:
GLACI-HTTPD is a Netware Loadable Module which allows a Novell NetWare server to become a World Wide Web server (URL is ).

(Up to Table of Contents)

5.2.5: VMS Servers

A port of the CERN server to VMS. Available at the URL$user/duns/doc/vms/distribution.html .
Region 6 Threaded HTTP Server
A native VMS server which uses DECthreads(tm). This is a potentially major performance advantage because VMS has a high overhead for each process, which is a problem for the frequently-forking NCSA and CERN servers that began life under Unix. A multithreaded server avoids this overhead. Available at the URL .

(Up to Table of Contents)

5.2.6: Amiga Servers

NCSA's Unix server has been ported to the Amiga, and is bundled with the AMosaic browser. See the URL for details.

(Up to Table of Contents)

5.2.7: VM/CMS Servers

A VM/CMS web server is available; see the URL for more information. If you don't yet have a web browser to try this URL with, check out the VM/CMS Browsers section.

(Up to Table of Contents)

5.2.8: Yeah, but which is best?

To find out which server is best for your needs, you will want to consult Paul Hoffman's Server Comparison Chart (URL is ). That document is also available by anonymous FTP from in the directory pub/bo/boutell/faq.

(Up to Table of Contents)

5.3: Producing HTML documents

HTML is the simple markup system used to create hypertext documents. There are three ways to produce HTML documents: writing them yourself, which is not a very difficult skill to acquire, using an HTML editor, which assists in doing the above, and converting documents in other formats to HTML. The following three sections cover these possibilities in sequence.

(Up to Table of Contents)

5.3.1: Writing HTML documents yourself

You can write an HTML document with any text editor. Try the "source" button of your browser (or "save as" HTML) to look at the HTML for a page you find particularly interesting. The odds are that it will be a great deal simpler than you would expect. If you're used to marking up text in any way (even red-pencilling it), HTML should be rather intuitive.

A beginner's guide to HTML is available at the URL . You can also find a plain text version (at the URL and a compressed Postscript version (at the URL (Since the latter two are FTP URLs, you can fetch them by hand using FTP if you do not yet have a web browser.)

There is also an HTML primer by Nathan Torkington at the URL .

(Up to Table of Contents)

5.3.2: HTML editors

Of course, most folks would still prefer to use a friendlier, graphical editor. Some editors are WYSIWYG (What You See Is What You Get), or close to it; others simply assist you in writing HTML by plugging in the desired markup tags for you from a menu.

Fans of the EMACS editor can use EMACS and html-helper-mode , an EMACS "mode" for HTML editing (URL is

There is also another Emacs HTML mode, html-mode.el (URL is

For Microsoft Windows users, there is an editor called HTML Assistant with features to assist in the creation of HTML documents. It can be had by anonymous FTP from in the directory /htmlasst/. Read the README.1ST file in this directory for information on which files to download.

ANT_HTML.DOT is a Word for Windows 6.0 template designed to convert Word documents into HTML documents in a WYSIWYG environment. It includes a demo version of the ANT_PLUS utility, which converts HTML files to WYSIWYG. ANT_PLUS also converts HTML files to ASCII, RTF, or any other format possible in Word 6.0. Contact if you need more information.

A WYSIWYG editor for the Web, SoftQuad HoTMetaL, is available for downloading at NCSA and numerous other sites. Many mirror sites exist; if you can't get through to one, try another, don't give up! That's what mirror sites are for. (Also be sure to use the copy closest to you geographically if possible.) Hotmetal is available for both Sun Sparc systems and Windows systems; note that Windows users need at least 6 megabytes of free memory. (A 2-megabyte swap file should just barely do the trick on a 4MB machine.)

Known mirrors:

You need a Sun SPARC or Microsoft Windows system and 6MB of disk (6MB of RAM minimum for MS Windows; swap files count). Other Unix systems may be supported by the time you read this; have a look on one of the sites above.

Because it is context-sensitive, HoTMetaL guides users in creating new HTML documents and in cleaning up old ones. A Publish command changes appropriate SRC and HREF attributes from local paths to http locations. For more information, FTP the README file from the same directory, or send email to A HoTMetaL Pro commercially supported version is available for purchase from SoftQuad and its resellers.

Also see Gabriel White's reviews of MS Windows HTML editors (URL is ). Another option, if you have an SGML editor, is to use it with the HTML DTD (URL is ).

An editor for all X users: TkWWW (listed above under X browsers) supports WYSIWYG HTML editing; and since it's a browser, you can try out links immediately after creating them.

Another editor for X users: Phoenix (URL is ) is a fully WYSIWYG HTML editor which insulates the user from direct control of the HTML tags. Available by anonymous FTP from in the pub/phoenix subdirectory.

Also for X users, there is a package called htmltext which supports WYSIWYG HTML editing. More information is available at the URL .

For Macintosh users, there is a near-WYSIWYG package called HTML Editor (URL is

ANT_HTML is a Word for the Macintosh template designed to convert Word documents into HTML documents in a WYSIWYG environment. It includes a demo version of the ANT_PLUS utility, which converts HTML files to WYSIWYG. ANT_PLUS also converts HTML files to ASCII, RTF, or any other format possible in Word. At the time of this writing it was scheduled to have been released on the Macintosh (it has long been available for Windows). Contact for more information. Also for Macintosh users, the BBEdit HTML extensions allow the BBEdit and BBEdit Lite text editors for the Macintosh to conveniently edit HTML documents. (URL is .) You can also obtain the extensions package by anonymous ftp from as info-mac/bbedit-html-ext-b3.hqx.

There is an alternative BBEdit extension package available as well (URL is ). it is available by FTP from in the directory /pub/users/ld11/BBEdit_HTML_Tools.sea.hqx.

NCSA's List of Filters and Editors, for which the URL is, mentions several editors, including two for MS Windows. In some cases, the "editor" amounts to a set of macros for an existing word processor, which can provide a near-WYSIWYG environment.

Note that this URL contains uppercase and lowercase letters; certain operating systems won't allow mixed case on the command line, or will only allow it if it is quoted (VMS), so if you are launching Lynx or another client and specifying a URL at the command line, try quoting the URL in double-quotes ("URL").

(Up to Table of Contents)

5.3.3: Converting other formats to HTML

There is a collection of filters for converting your existing documents (in TeX and other non-HTML formats) into HTML automatically, including filters that can allow more or less WYSIWYG editing using various word processors:

Rich Brandwein and Mike Sendall's List at CERN (URL is ).

(Note that this URL contains uppercase and lowercase letters; certain operating systems such as VMS require you to quote mixed-case URLs when launching a borwser from the command line. This is NOT a bug in the browser.)

There is also a Word for Windows template for writing HTML documents, available at the URL .

(Up to Table of Contents)

5.3.4: Checking your HTML for errors

Tools to validate your HTML documents (check them for errors) are available. There is a form at the URL which will check HTML documents for errors according to the latest specification; note that you are encouraged to set up the program on your own system if you make heavy use of the form. There is also a tool which will check the links in your documents for links to nonexistent resources, such as pages that have moved (URL is ).

Also try weblint (URL is ), a Perl script that checks your HTML for errors; you can even try it out over the web through an HTML form. The script is available by anonymous FTP from in the directory pub/perl/www.

Another such tool is htmlchek (URL is: ), which checks HTML documents for errors, creates a cross-reference, automatically expands entities (such as European characters) to their proper HTML form, and performs other useful services. htmlchek is available by anonymous FTP from in the directory pub/htmlchek.

(Up to Table of Contents)

5.4: How do I publicize my work?

There are several things you can do to publicize your new HTML server or other offering: (Up to Table of Contents)

5.5: Can I buy space on an existing server?

Yes, you can. A list of sites offering WWW space for lease is available (at the URL ).

(Up to Table of Contents)

5.6: How fast does my net connection need to be?

The following response to this very-frequently-asked-question was provided by Mike Meyer (
The answer is "It depends." What it depends on is what kind of things you want to provide on your server. Here are some rules of thumb to use when deciding what kind of connection you need for your server.

The first rule of thumb is:

Don't worry about simultaneous access.

Unless you have a very large site, simultaneous access is not a problem. If you have a very large site, you need as much bandwidth as you can afford. There is a bit more about this below.

The second rule of thumb is:

It should take at most 5 seconds to send a page.

The five second rule dates from command line days, when that was about how long people would wait before getting impatient with the system. It seems like a reasonable number to use now.

Since external images/audio/etc. are somewhat exceptional, allow more time for them. If you think they should have the same restrictions as above, buy the bandwidth your site will need to do so. However, the rule of thumb for external images/audio/etc is:

It should take at most 30 seconds to send an external file.

Given these rules, it's pretty straightforward to work out how large an HTML page and external files can be. At least, it's easy after you simplify things by ignoring IP overhead on the line, compression on modem lines, and anything that's less than 10% of the total (or even a little bit more than 10%).

The one simplification not to ignore is the multiple packet round-trips it takes to get data flowing through an HTTP channel. For modem lines, this is nearly a second for each HTTP connection, which is significant. For leased lines, it's more like .1 or .2 seconds, which is not significant.

On a 14.4 line assumed to be sending 1.4K bytes of data/second, with a 1 second startup, you get 4 * 1.4 or 5.6K of HTML. If you want to include a single inline image, that's 2 seconds of startup, so you're down to 3 * 1.4 or 4.2K of HTML + image. This means smallish HTML pages, and simple inline images. For external files, you get 29 * 1.4 or 40K, which is still a small image. If you have a 28.8 line, you get to double those figures; for a 9600 line, figure 2/3rds of that size.

On a 56K leased line assumed to be sending 5K/second, you get 25K of HTML, or mixed HTML/data. For external images, it's 150K. That should cover any reasonable HTML document, and small to medium external files. An MPEG movie might be a bit much.

With a T1 line assumed to be sending 150K/second, you get 750K of HTML, or 4.5 megabytes in an external file. Barring very large animations, this should be sufficient for anything you want to serve. More would be faster, but it also gets drastically more expensive.

Given the above guidelines, let's look at simultaneous access again. Under the worst case conditions, you're using all of your line for HTML pages, each of which takes 5 seconds to send, so your server is sending 12 pages a minute, or 720 pages an hour, or 17,000 pages a day (pages, not accesses; each inline image in a page generates an access, unless the client cached it). This makes you one of the busier sites on the web. While you'll have contention problems before you get to this point, anything but a modem connection will be sending most pages in a small fraction of five seconds, which should leave plenty of bandwidth with no contention. If you have this kind of access rates on a modem line, you should seriously consider upgrading your connection.

The bottom line on simultaneous access is that the WWW server is more likely to have contention with other uses of the line than with itself. Since I don't know what else you use your line for, I can't factor it in. You'll have to consider that issue yourself.

(Up to Table of Contents)

5.7.1: How do I set up a clickable image map?

There are really two issues here: how to indicate in HTML that you want an image to be clickable, and how to configure your server to do something with the clicks returned by Mosaic, Chimera, and other clients capable of delivering them.

You can read about image maps and the NCSA server at the URL .

Using imagemaps requires that you create a map file; you can do this by hand or with a WYSIWYG tool.

VERY IMPORTANT: Creating imagemaps requires a real web server (not an FTP server) and a cooperative web server administrator. It is not usually as simple as wrapping a link around an IMG SRC tag and adding the ISMAP directive; the server must also be told about the map file, and the way to accomplish this varies from server to server. So read your server documentation, and don't waste time making maps before making sure you have the necessary tools to deliver them.

Mapedit (URL is: ) is a WYSIWYG imagemap editing tool for Microsoft Windows and the X Window System.
For users of John Bradley's xv image display software for the X Window System, Mapmaker can turn the miniature images created by xv's Visual Schnauzer into an imagemap. This is useful if you would like to make an entire directory of images available (but note that you should also make textual links to allow those with text- based browsers to download the images for external viewing). (URL is: )
On the Macintosh, you may want to use WebMap (URL is ). . It produces both NCSA and CERN-compatible maps, which can also be used with MacImagemap and a Macintosh-based server (MacImagemap is found in the same directory). Alternatively, you may want to use MacMapMaker, also available from (the same directory).
For Unix systems and other systems on which the Tk/Tcl language toolkit has been installed, Tkmapedit provides a WYSIWYG imagemap editor which is capable of directly testing links if the tkWWW web browser is available. Available by anonymous FTP from the TCL archive on

(Up to Table of Contents)

5.7.2: How do I make a "link" that doesn't load a new page?

Such links are useful when a form is intended to perform some action on the server machine without sending new information to the client, or when a user has clicked in an undefined area in an image map; these are just two possibilities.

Rob McCool of NCSA provided the following wisdom on the subject:

Yechezkal-Shimon Gutfreund ( wrote:
: Ok, here is another bizzare request from me:

: I am currently running scripts which I "DO NOT" want to return
: any visible result. That is, not text/plain, not text/HTML, not
: image/gif. The entire results are the side effects of the
: script and nothing should be returned to the viewer.

: It would be nice to have an internally supported null viewer
: so that I could do this, more "cleanly" (ok, ok, I hear your groans).

HTTP now supports a response code of 204, which is no operation. Some browsers such as Mosaic/X 2.* support it. To use it, make your script a nph script and output an HTTP/1.0 204 header. Something like:

HTTP/1.0 204 No response Server: Myscript/NCSA httpd 1.1

(You can learn more about nph scripts from the NCSA server documentation at the URL Essentially they are scripts that handle their own HTTP response codes.

(Up to Table of Contents)

5.7.3: Where can I learn how to create fill-out forms?

Writing an HTML form is easy, but the form doesn't accomplish anything until you write a CGI program to interpret the results on the server side! For more information, see section 5.7.14.

See the section on email forms for a simple solution to the most commonly desired form.

(Up to Table of Contents) How can I create hidden fields in forms (keeping state)?

Use INPUT TYPE=hidden. An example:
<INPUT TYPE=hidden NAME=state VALUE="hidden info to be returned with form">
By now, most browsers can handle the hidden type, but understand that some browsers will fail to hide the field (and probably confuse the user). Note that "hidden" doesn't mean "secret"; the user can always click on "view source".

(Up to Table of Contents) How can users send me email through their browsers?

There are two ways:
Using a mailto: URL
You can simply create a link which looks like this:

<A HREF="mailto:me@my.address">Send Me Mail</A>

This works great for browsers that support the mailto: URL. Perhaps 80% of web users will be able to use such a link. But not all browsers support it.

Installing an email form
If you have access to the server's configuration files, or if your server administrator permits users to create their own CGI scripts, you can create a form which sends mail to you from any browser that supports forms. I've written a simple email forms package (URL is: ), which does it in ANSI C. There is also a package written in Perl, known as the WWW Mailto Gateway (URL is ). GetComments (URL is: is a more general package, also written in Perl, which can handle many different types of comment forms.

If you want to learn how these forms actually work, see section 5.7.14.

(Up to Table of Contents)

5.7.4: How do I comment an HTML document?

Use the <!-- tag at the beginning of EACH line commented out; close this for EACH line with the --> tag. Note that comments do not nest, and the sequence "--" may not appear inside a comment except as part of the closing --> tag. (It's officially allowed, but some browsers won't handle it properly.)

You should not try to use this to "comment out" HTML that would otherwise be shown to the user, since some browsers (notably Mosaic) will still pay attention to tags inside the comment and close it prematurely.

Thanks to Joe English for clearing up this issue.

(Up to Table of Contents)

5.7.5: How can I create decent-looking tables and stop using <PRE>... </PRE>?

Tables are a standard feature in HTML Level 3, a new version of HTML. Unfortunately, they are at present implemented only by the latest NCSA Mosaic versions and the Viola and Emacs-W3 browsers, to my knowledge. In addition, most implementations are incomplete. In some implementations, at the time of this writing, text in tables cannot be selected and/or cannot be a link.

However, there is a way to use HTML Level 3 tables now and convert them automatically to HTML, allowing you to design proper tables and install those pages directly when table support arrives in the majority of clients. You can do this using the html+tables package, by Brooks Cutter (, which is available for anonymous ftp from in the directory pub/packages/infosystems/WWW/tools/html+tables.shar. This package requires the shell language Perl, which is primarily used on Unix systems but is also available for other systems (such as MSDOS machines). html+tables accepts HTML Level 3 and outputs html using the <PRE>...</PRE> construct to represent tables, allowing you to write HTML Level 3 now, knowing that it will look better when clients are ready for it.

(Up to Table of Contents)

5.7.6: What is HTML Level 3 and where can I learn more about it?

HTML Level 3, also known as HTML+, is an enhanced version of HTML designed to address some of the limitations of HTML. HTML Level 3 supports true tables, right-justified text, centered text, line breaks that do not double space, and many other desired features.

However, most clients support only a handful of HTML Level 3 features (such as the partial implementation of tables in Mosaic) at the time of this writing. If you have access to a Unix system with the X Window System installed, you can try out many features of HTML Level 3 using the experimental Arena browser.

You can access information about new developments in HTML at the CERN server (at the URL ).

(HTML Level 1 is the original version. HTML Level 2 is essentially the same, but with the addition of forms.)

(Up to Table of Contents)

5.7.7: How can I make transparent and interlaced GIFs? And what are they?

Transparent GIFs are useful because they appear to blend in smoothly with the user's display, even if the user has set a background color that differs from that the developer expected. They do this by assigning one color to be transparent -- if the web browser supports transparency, that color will be replaced by the browser's background color, whatever it may be.

Interlaced GIFs appear first with poor resolution and then improve in resolution until the entire image has arrived, as opposed to arriving linearly from the top row to the bottom row. This is great to get a quick idea of what the entire image will look like while waiting for the rest. This doesn't do much for you if your web browser doesn't support progressive display as the image is downloaded, but non-progressive-display web browsers will still display interlaced GIFs once they have arrived in their entirety.

To create transparent and interlaced GIFs, check out David Koblas' giftool, a program which can manipulate those options and many more aspects of your GIF file.

In addition, there is a document explaining transparent GIFs available at the URL . You can fetch the program giftrans by anonymous ftp from at the path /pub/net/www/tools/giftrans.c.

There is also a Perl Script (URL is: ) which makes transparent GIFs.

There is also a utility for the Macintosh, Transparency (URL is:

(Up to Table of Contents)

5.7.8: How come mailto: URLs don't work?

The mailto: URL is a feature found in Lynx, Netscape, Spry Mosaic, the latest NCSA Mosaics, Emacs w3 mode and many other browsers. In general, about 80% of web browsers support mailto: at the time of this writing. However, it is not in numerous older browsers. In the meantime, you can set up forms which send mail to you; see Section

(Up to Table of Contents)

5.7.9: How can I restrict and control access to my server?

All major servers have features that allow you to limit access to particular sites, and many clients have authentication features that allow you to identify specific users. There is a tutorial on security and user authentication with the NCSA server and Mosaic available, written by Marc Andreessen (URL is ). See your server documentation for further information.

(Up to Table of Contents)

5.7.10: Which format is better for WWW image purposes, JPEG or GIF?

JPEG does a better job with realistic images such as scanned photographs. Most browsers cannot handle inline JPEGs, however, so you must link to them as external images (using a regular <A HREF...> instead of <IMG SRC...>).

GIF does a better job with crisp, sharp images, such as those typically used to construct buttons, graphs and the like. All browsers that can display graphics at all can display GIFs inline.

(Up to Table of Contents)

5.7.11: How can I mirror part of another server?

Scripts are available to do this, but at this time they are not very friendly to the server you are attempting to mirror; their behavior resembles that of the more poorly written WWW robots. If you are trying to improve access times to a distant server, you will likely find the "proxy" capabilities of CERN's WWW server to be a more effective and general solution to your problem.

(Up to Table of Contents)

5.7.12: How can I keep robots off my server?

Programs that automatically traverse the web can be quite useful, but have the potential to make a serious mess of things. Every so often someone will write a "depth-first" searching robot that brings servers to their knees. See the section on writing robots (4.10) for details.

Fortunately, most robots on the web follow a simple protocol by which you can keep them off your server if you wish, or keep them out of portions of your server which are robot traps (ie, they contain an infinite number of possible links). Read the document World Wide Web Robots, Wanderers and Spiders (URL is: ) and learn about the emerging standards for exclusion of robots from areas in which they are not wanted. You can also read about existing robots there, including useful cataloging robots you probably do not want to keep off your server.

(Up to Table of Contents)

5.7.13: How can I keep statistics about my web server?

There are several tools which can generate statistics about your web server:
getstats is a versatile log analyzer, also written in C, which provides reports for various time periods with a high degree of flexibility. Add-on packages have been written to generate reports in HTML and also to generate graphs. You can access the getstats home page for more information (URL is ), or obtain the package by anonymous FTP from in the directory /pub/
WebStat is a package written in the language Python which supplies statistics on usage by domain, country, etc., with daily, weekly, monthly and annual reports available. You will need Python in order to use it. See the WebStat home page (URL is ) for details, or obtain Python from in the directory /pub/python and WebStat from in the directory /pub/misc.
Wusage, which I wrote, is a C program which generates simple weekly reports in HTML, with inline image graphs displaying server growth and the distribution of accesses by continent. You can also exclude irrelevant accesses (inline images, local machines, etc.) from the results. Read the Wusage home page (URL is ) for more information, or obtain Wusage by anonymous FTP from in the directory pub/wusage.
wwwstat is a full-featured log analyzer written in the language Perl. (See the newsgroup comp.lang.perl for more information about the language.) See the wwwstat home page (URL is for more information, or obtain the package by anonymous FTP from in the directory /pub/arcadia/wwwstat. See also gwstat (URL is ), a package which produces GIF graphs from the output of wwwstat.

(Up to Table of Contents)

5.7.14: I want to generate web pages from a program. Do I have to write a custom server?

No, you will not need to write a custom server. Most web servers support one variation or another of a standard for adding your own programs to the web server. The standard is called CGI (Common Gateway Interface).

Marc Hedlund has written a FAQ on CGI programming (URL is: ) which makes a good introduction to the subject. The standard itself can be found at NCSA (URL is: ).

(Up to Table of Contents) How can I generate GIFs on the fly from my CGI scripts?

If you want to generate GIF images on the fly as part of your application, examine the gd library (URL is: ). Hint: your HTML page and your inline images are separate documents with separate URLs. Generate them in response to separate requests! (Yes, there are tricks to speed this up, but be careful not to break inline images on HTML pages you didn't write that refer to your gd-generated image.)

It's also possible to use gnuplot and the pbmplus utilities. This is slower, but can require less programming if gnuplot is sufficient for your purposes. (See archie for both tools.)

(Up to Table of Contents)

6: Where can I discuss the World Wide Web?

6.1: What newsgroups discuss the Web?

You can find discussion of World Wide Web topics in three newsgroups, and one newsgroup which will soon be removed:
A forum for the discussion of WWW client software and its use in contacting various Internet information sources. New user questions, client setup questions, client bug reports, resource-discovery questions on how to locate information on the web that can't be found by the means detailed in the FAQ and comparison between various client packages are among the acceptable topics for this group. Please specify what browser and what system type (Windows, Mac, Unix, etc.) your post is about if you are asking questions about a specific program.
A forum for the discussion of WWW server software and the use of said software to present information to users. General server design, setup questions, server bug reports, security issues, HTML page design and other concerns of information providers are among the likely topics for this group.
A forum for general discussion of WWW (World Wide Web)- related topics that are NOT covered by the other newsgroups in the hierarchy. This will likely include discussions of the Web's future, politicking regarding changes in the structure and protocols of the web that affect both clients and servers, et cetera.
A moderated forum for the announcement of new and updated World Wide Web resources and software.
comp.infosystems.www (DEFUNCT)
The old catch-all newsgroup, which may still exist on your system but was officially removed on September 7th, 1994, according to David Lawrence, moderator of news.announce.newgroups. If your system still carries this group, ask your administrator to remove it.

(Up to Table of Contents)

6.2: What mailing lists discuss the Web?
Address: for CONTRIBUTIONS ONLY. Administration: (robot) (human). Description: Technical discussion, W3 related. Experts to experts. General questions to the newsgroups, please. Archive: Not currently served, but kept.
Address: NOT FOR GENERAL USE - serious low-volume announcements only. Administration: (robot), (human). Description: Low volume summary announcemements of product releases, etc. Archive: Not currently public.

(Up to Table of Contents)

7: I want to know more

To find out more, use the web. This FAQ hopefully provides enough information for you to locate and install a browser on your system. If you have system specific questions regarding FTP, networking and the like, please consult newsgroups relevant to your particular hardware and operating system!

Once you're up and running, you may wish to consult the World Wide Web Primer by Nathan Torkington. It is available at the URL .

Later you may return to this FAQ for answers to some of the more advanced questions. I encourage you to check out the changes listed early in the document each time the FAQ appears.

(Up to Table of Contents)

8: Credits

Maintainer (11/93 to present): Thomas Boutell,

Former Maintainer (until 11/93): Nathan Torkington,

(Up to Table of Contents)