home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.infosystems.gopher,comp.infosystems.www.servers.unix,news.answers
- Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!newsserver.pixel.kodak.com!news.sprintlink.net!howland.reston.ans.net!swrinde!cs.utexas.edu!garcon.unicom.com!unicom.com!not-for-mail
- From: chip@unicom.com (Chip Rosenthal)
- Subject: The GN Gopher/HTTP Server [monthly FAQ posting]
- Approved: news-answers-request@mit.edu
- Originator: chip@unicom.com (Chip Rosenthal)
- Message-ID: <gn-951012@unicom.com>
- Sender: chip@unicom.com (Chip Rosenthal)
- Supersedes: <gn-950821@unicom.com>
- Expires: Mon, 11 Dec 1995 06:56:28 GMT
- Summary: answers to frequently asked questions
- Organization: Unicom Systems Development, Austin, TX
- Date: Thu, 12 Oct 1995 06:56:28 GMT
- Followup-To: comp.infosystems.gopher
- X-Nntp-Posting-Host: chinacat.unicom.com
- Lines: 549
- Xref: senator-bedfellow.mit.edu comp.infosystems.gopher:17512 comp.infosystems.www.servers.unix:6302 news.answers:55070
-
- Archive-name: gn
- News-answers-archive-name: www/gn-server/faq
- Posting-frequency: monthly
- Version: 1.8
-
- @(#) gn 1.8 95/10/12 01:51:55
-
- --------------------------------
-
- Subject: 0. Welcome
-
- Welcome to the GN FAQ! This document answers many frequently-asked
- questions about GN, a free Gopher and World Wide Web server for Unix.
-
- Please examine the date near the top of this message. This message
- is updated from time to time, and older versions might be obsolete.
- The most up-to-date version of this FAQ may be retrieved from the
- following locations:
-
- - The World Wide Web -- http://www.unicom.com/FAQ/
-
- - The Internet Gopher -- gopher://gopher.unicom.com/11/FAQ
-
- - Anonymous FTP -- ftp.unicom.com:/pub/FAQ/gn
-
- - Email Archive Server
- Mail to: "archive-server@unicom.com".
- Use a "Subject: send 00/FAQ/gn" email header.
- Or use "Subject: help" for more info.
- Body of message is ignored.
-
- This message is maintained and posted monthly by Chip Rosenthal
- <chip@unicom.com>. Your corrections, additions, and comments are
- encouraged.
-
- Chip has been maintaing this document since May 95, when he took over
- from Stephen Trier. The original draft was written by Rich Wiggins.
- Most of these questions were written by Rich and Stephen, to whom the
- current maintainer is grateful. Additional contributions have been
- made by: John Franks, E. Loren Buhle, Jr., Josh Smith, Michael Regoli,
- and Judy Birmingham -- as well as the many folks asking questions and
- giving answers on the gn-maint-l mailing list. Thanks to all.
-
- ------------------------------
-
- Subject: 1. Table of Contents
-
- The following questions are answered in this version of the FAQ:
-
- 0. Welcome
- 1. Table of Contents
- 2. What is GN?
- 3. How does GN compare to University of Minnesota's gopherd?
- 4. What is the development and support status of GN?
- 5. Should I use GN as my WWW server?
- 6. Is GN free?
- 7. How can I see GN in action?
- 8. Where can I get GN?
- 9. Where can I get more info about GN or contact other GN users?
- 10. How do I subscribe/unsubscribe from the gn-maint-l mailing list?
- 11. Can I run GN and gopherd at the same time?
- 12. How do I make GN answer on both port 70 (gopher) and 80 (HTTP)?
- 13. I can't query a WAIS database on another computer. Why not?
- 14. How can I gateway to FTP using GN?
- 15. How do I get gopherd or g2fd?
- 16. Can GN do gopher+? Does GN support ASK blocks?
- 17. I converted from gopherd to GN, and now "waissrc:" doesn't work.
- 18. I converted from gopherd to GN, and now "ftp:" doesn't work.
- 19. What's the easiest way to serve the same document in HTML for WWW
- clients and text for gopher clients?
- 20. GN is serving truncated documents and menus. How do I fix it?
- 21. How do I add a link to a specific URL?
- 22. How can I point to an HTML file in my docs directory (or another
- subdirectory) from the initial menu?
- 23. Can I write a GN script that automatically logs in on a telnet session?
- 24. Can GN scripts get interactive input from the user?
- 25. Is there an easy way of knowing which version of GN is
- running on a particular host?
- 26. How do I set up clickable images?
- 27. I added a line to /etc/services for a service, but
- inetd can't find the service. What's wrong?
- 28. My inline images are showing up as "broken picture" icons.
-
- ------------------------------
-
- Subject: 2. What is GN?
-
- GN is a multi-protocol server for Gopher and World-Wide Web that
- runs under Unix. It was written by Dr. John Franks of Northwestern
- University.
-
- * Huh? Did you say GN can serve *both* Gopher and Web clients?
-
- Absolutely! You can maintain one document tree and one set of
- control files to manage both your Gopher and Web services.
-
- * How does GN do this magic?
-
- It is bilingual! It recognizes the protocol spoken by the client,
- either Gopher or HTTP (the language of the Web), and answers as
- appropriate. You use the GN "menu" files to specify which
- documents may be served to Gopher clients, which may be served to
- Web clients, and which may be served to both.
-
- * Does this mean that my Web pages end up looking like Gopher menus?
-
- Not at all! GN provides you access to the full range of Web
- features, including CGI forms and in-line images. It is fully
- fluent in HTML. GN pages can look so good, a service running GN
- won an award in the Best of the Web '94 competition!
-
- ------------------------------
-
- Subject: 3. How does GN compare to University of Minnesota's gopherd?
-
- GN has some advantages and disadvantages with respect to the UMinn
- gopherd.
-
- Here are some of the advantages:
-
- Predictibility - You always know what items GN will present and the
- order in which things will appear because *you* control this
- through the "menu" files. (The "menu" files are analogous to
- gopherd ".Links" files, with many added capabilities.)
-
- Implementation - We think GN is smaller, tighter, faster, and more
- reliable. For example, the (bloated) WAIS searching code is cast
- off into a seperate "waisgn" executable. This makes GN a lot
- easier on the system when run out of "inetd".
-
- Security - Because you control precisely what documents the server
- will provide, and because it is a "small" program, we believe it
- provides positive security benefits.
-
- Licensing - The license for GN is clear and unambiguous. It is
- freeware.
-
- HTTP - If you are on the World Wide Web, GN allows you to serve
- both Gopher and Web. If you aren't doing WWW yet, then GN will
- ease your transition the day you decide to.
-
- Active Community - A large number of sites run GN, and very good
- support is available through the "gn-maint-l" mailing list.
-
- Here are some of the disadvantages:
-
- No Gopher+: GN is a gopher0-only server. It does not support the
- features of the gopher+ protocol, such as ASK blocks.
-
- No gateway support: Although GN supports WAIS searches of
- documents in your Gopher tree, it does not provide a gateway to
- external WAIS servers. Likewise, it does not include an FTP
- gateway.
-
- ------------------------------
-
- Subject: 4. What is the development and support status of GN?
-
- GN is a mature product, and no new development is happening.
- It is, however, actively maintained and supported by the author.
- Also, the gn-maint-l mailing list (discussed shortly) provides an
- active forum for GN users and administrators.
-
- ------------------------------
-
- Subject: 5. Should I use GN as my WWW server?
-
- If you need to support Gopher as well as the HTTP protocols, GN might
- be a very good choice. It greatly reduces your administrative burden
- by providing both services through a single set of configuration and
- data files.
-
- If, however, you have no need for Gopher support, you might find that
- some of the newer WWW servers provide a higher level of capability.
- In particular, you might want to look at WN, an HTTP-only server
- written by John Franks. Additional information is available
- at <URL:http://hopf.math.nwu.edu/>.
-
- ------------------------------
-
- Subject: 6. Is GN free?
-
- Yes. GN is offered under the GNU Public License. No royalties are
- required for any use, including commercial use or distribution.
-
- (The University of Minnesota charges for commercial use of their Unix
- server. Connect to their server (gopher.tc.umn.edu port 70) and look
- under "Information About Gopher" for details.)
-
- ------------------------------
-
- Subject: 7. How can I see GN in action?
-
- GN's home server is hopf.math.nwu.edu. This computer runs GN, and
- you can browse it with gopher or WWW to get a taste of its abilities.
- You will find very good online documentation, suitable for reading
- section-by-section -- or for printing in its entirety. You'll also
- find online examples of how GN handles certain document types.
-
- You may connect either via WWW <URL:http://hopf.math.nwu.edu:70/> or Gopher:
-
- Name=The home of GN (hopf.math.nwu.edu)
- Path=
- Type=1
- Host=hopf.math.nwu.edu
- Port=70
-
- ------------------------------
-
- Subject: 8. Where can I get GN?
-
- GN is distributed by anonymous FTP from ftp.acns.nwu.edu in /pub/gn.
- To get GN, follow these steps:
-
- FTP to ftp.acns.nwu.edu
- Log in as anonyous
- Use your e-mail address as your password
- cd /pub/gn
- Fetch the files you need
-
- The file will be called gn-2.##.tar.gz (where "2.##" really will appear
- as the current version number). After you retrive the file you will need
- to uncompress it and unarchive it before you can configure it and build it.
-
- The ".gz" suffix means the archive has been compressed with the GNU Zip
- ("gzip") utility. This is somewhat similar to the standard Unix
- compress program (which produces ".Z" files). Therefore, you need a
- copy of the GNU Zip package before you can even begin. It is a popular
- program, and available on hundreds (thousands?) of archive sites throughout
- the world. The home site for GNU software is prep.ai.mit.edu.
-
- ------------------------------
-
- Subject: 9. Where can I get more info about GN or contact other GN users?
-
- There are a number of resources to help you learn about GN and help
- you administer your server. We've already mentioned the hopf.math.nwu.edu
- server. Here are a few more.
-
- There is a mailing list called "gn-maint-l" dedicated to supporting
- GN users. If you are the least bit interested in the package, you
- *want* to join list. There is an extremely active community
- supporting GN, and they all hang out here. The next section tells
- you how to join the list.
-
- The Usenet comp.infosystems.gopher newsgroup is another resource.
- Note, however, that although many GN administrators read that group,
- most discussion specific to GN occurs on the gn-maint-l list. The
- comp.infosystems.gopher group is still a good place to ask general
- Gopher protocol questions. Also note that while all new versions of
- GN, including bug fix releases, are announced on gn-maint-l, only
- major revisions are announced in comp.infosystems.gopher.
-
- Chip Rosenthal maintains a "GN Information page" with some useful
- tools for the GN administrator and pointers to other information.
- See <URL:http://www.unicom.com/gn-info/> or
- <URL:gopher://gopher.unicom.com/11/gn-info>.
-
- ------------------------------
-
- Subject: 10. How do I subscribe/unsubscribe from the gn-maint-l mailing list?
-
- There is a mailing list for GN users, known as gn-maint-l.
-
- To subscribe with the address from which you're sending mail, send a
- message to 'majordomo@hmc.edu', with "subscribe gn-maint-l" as the
- entire body (not the Subject: line) of the messge. To subscribe with
- some other address, do exactly as above, except use "subscribe
- gn-maint-l otheraddress" as the body, where "otheraddress" is the other
- address. (This second method requires the list maintainer's approval
- before it will take effect.)
-
- For more information on using the mailing list server, send the
- one-line message "help" to majordomo@hmc.edu.
-
- To unsubscribe, send the phrase "unsubscribe gn-maint-l" in a message
- body (not the subject) to majordomo@hmc.edu. If that doesn't work,
- use "unsubscribe gn-maint-l <your-email-address>". If all else fails,
- contact the human operating the list at owner-gn-maint-l@hmc.edu.
-
- Be patient -- the first suggestion here works automatically, but the
- other two require human intervention and might take a day or two.
-
- IMPORTANT: Never send an unsubscription request to any other address,
- particularly the main list address. This will NOT get you off the
- list. All it does is broadcast your message to *all* of the other
- list members, who couldn't unsub you even if they wanted to.
-
- ------------------------------
-
- Subject: 11. Can I run GN and gopherd at the same time?
-
- Yes. They must be run on different ports and should have different
- data directories. Here is an example:
-
- Place appropriate entries for both ports in your /etc/services file
- (or NIS services map):
-
- gopher 70/tcp # gopher server
- gopher-gw4 2073/tcp # gateway 4 for gopher server
-
- The designation "gopher-gw4" and the port 2073 are arbitrary for the
- second server. Use whatever name and port you wish. Then add entries
- for each in /etc/inetd.conf:
-
- gopher stream tcp nowait nobody /usr/local/libexec/gn gn
- gopher-gw4 stream tcp nowait nobody /usr/local/libexec/gopherd gopherd
-
- ------------------------------
-
- Subject: 12. How do I make GN answer on both port 70 (gopher) and 80 (HTTP)?
-
- Put two entries for GN in your inetd.conf, one on each port. Unless
- you intentionally want the two GNs to return different data, both
- entries should have identical command-line options.
-
- Here is an example:
-
- Place appropriate entries for both ports in your /etc/services file
- (or NIS services map):
-
- gopher 70/tcp # gopher server
- http 80/tcp www # HyperText Transfer Protocol for WWW
-
- The next two lines go in /etc/inetd.conf:
-
- gopher stream tcp nowait nobody /usr/local/libexec/gn gn
- http stream tcp nowait nobody /usr/local/libexec/gn gn
-
- Notice that these lines are identical except for the port name. The
- paths and options in your inetd.conf lines will be different, depending
- on how you have set up gopher.
-
- Remember to tell inetd to re-read its configuration (probably "kill -HUP")
- after making the changes.
-
- ------------------------------
-
- Subject: 13. I can't query a WAIS database on another computer. Why not?
-
- GN uses WAIS only for local searches. It cannot gateway to a remote
- WAIS server.
-
- gopherd can be used as a gateway to remote WAIS servers.
-
- ------------------------------
-
- Subject: 14. How can I gateway to FTP using GN?
-
- You cannot, at least not directly. GN does not have a built-in FTP
- gateway.
-
- You can install a separate gateway program to do FTP gatewaying.
- Suitable programs are gopherd and g2fd.
-
- ------------------------------
-
- Subject: 15. How do I get gopherd or g2fd?
-
- For information on how to get GN, see question 4.
-
- To get gopherd:
-
- Anonymous FTP to boombox.micro.umn.edu. Look in the directory
- /pub/gopher/Unix for a file with a name like, "gopher-2.nnn.tar.Z".
- nnn is a version number which can't be predicted here.
-
- To get g2fd:
-
- Anonymous FTP to boombox.micro.umn.edu. Look in the directory
- /pub/gopher/Unix/gopher-gateways/gopher2FTP. The files ReadMe and
- g2fd.c are the gateway.
-
- ------------------------------
-
- Subject: 16. Can GN do gopher+? Does GN support ASK blocks?
-
- No. GN does not support any gopher+ features at this time.
-
- ------------------------------
-
- Subject: 17. I converted from gopherd to GN, and now "waissrc:" doesn't work.
-
- GN uses a different syntax for WAIS searches. Please see the
- documentation in the GN package for more details.
-
- ------------------------------
-
- Subject: 18. I converted from gopherd to GN, and now "ftp:" doesn't work.
-
- GN does not have a built-in FTP gateway. You must use an external
- gateway, such as g2fd or gopherd.
-
- ------------------------------
-
- Subject: 19. What's the easiest way to serve the same document in HTML
- for WWW clients and text for gopher clients?
-
- You need to have a plain text file as well as the html file. So. . .
- contruct the html file and put in a dummy text file . . anything will
- do (eg. "hi" is fine). This will allow the line in menu to work. For
- example, presume you have a file called junk.html You should create a
- text file called junk
-
- Your menu entry will be:
-
- Name=Name of the item
- Type=0h/junk (I'm presuming this is in the top directory)
-
- Then go mkcache
-
- Read the file via a WWW-client (e.g. Mosaic) and SAVE it to a text
- file. The formatting will be done, stripping it of the html stuff. Then
- take this saved text file and copy it overtop (e.g. mv new_stuff junk)
- and you are done. You should make sure none of the lines in the new
- text file are >80 characters in length, but that is all.
-
- ------------------------------
-
- Subject: 20. GN is serving truncated documents and menus. How do I fix it?
-
- Running a Streams-based TCP, eh? If you are running 2.09 or later, go
- into "config.h" and enable DO_LINGER.
-
- ------------------------------
-
- Subject: 21. How do I add a link to a specific URL?
-
- Version 2.09 of GN adds a new construct to the "menu" file. Instead of
- making a "Name=" entry, use:
-
- URLlink=The change log for GN
- Url=http://hopf.math.nwu.edu/docs/CHANGES
-
- UrlLinks appear only to Web clients. They are omitted from menus
- served to Gopher clients.
-
- ------------------------------
-
- Subject: 22. How can I point to an HTML file in my docs directory (or
- another subdirectory) from the initial menu?
-
- The trick here is that you need *two* menu entries for this file: an
- entry in your main menu that provides a pointer to the file, and
- another in the docs directory that authorizes the access. If you do
- not want the file to appear in the listing provided for the docs
- subdirectory, then you may specify Attribute=Invisible there. Also, if
- you have just an HTML version of the document you might want to say
- Attribute=HttpOnly in the main menu entry to prevent Gopher clients
- from seeing it.
-
- Here is an example:
-
- # In data-directory/menu
- Name=some HTML document
- Path=0/docs/myfile
- ContentType=text/html
- Attribute=HttpOnly
-
- # In data-directory/docs/menu
- Name=dummy entry to allow file to be served
- Path=0/docs/myfile
- ContentType=text/html
- Attribute=Invisible
-
- Note that the "ContentType" records can be removed if the file is
- called "myfile.html" instead of just "myfile". If you have both HTML
- and plaintext versions, then use an "0h" instead of "0" selector and
- dump the "HttpOnly" attribute (and leave off the ".html").
-
- ------------------------------
-
- Subject: 23. Can I write a GN script that automatically logs in on a
- telnet session?
-
- No, this can't be done. Scripts run on the gopher server, but telnet
- sessions run on the _client_ computer. The gopher server isn't
- consulted at all when the client launches a telnet session; it goes
- straight to its destination, not through the server.
-
- This is the way the gopher protocol itself is designed, so you'll find
- the same no-scripted-telnet prohibition in all gopher servers, not just
- GN.
-
- ------------------------------
-
- Subject: 24. Can GN scripts get interactive input from the user?
-
- No. This is a limitation of the gopher protocol. It restricts all
- gopher servers, not just GN.
-
- If you really need interactivity, you will have to attach your script
- to a telnet login or a port in inetd, then point a type 8 (telnet) item
- to the script's home.
-
- ------------------------------
-
- Subject: 25. Is there an easy way of knowing which version of GN is
- running on a particular host?
-
- Yes! Telnet to the host and port in question, type "HEAD / HTTP/1.0",
- then press Enter twice. GN will respond with several lines of information,
- one item of which will be its version number.
-
- This works with most HTTP servers, not only GN.
-
- ------------------------------
-
- Subject: 26. How do I set up clickable images?
-
- Judy Birmingham has written a guide to how to set up clickable images
- in GN. See <URL:http://sparc2.sparcc.ohio.gov:70/0h/basics/wgs95/click.html>.
-
- ------------------------------
-
- Subject: 27. I added a line to /etc/services for a service, but
- inetd can't find the service. What's wrong?
-
- Your system is probably using YP (Yellow Pages), which is also known as
- NIS (Network Information Service). If NIS or YP is active, changing
- the local /etc/services file has no effect. You need to change the
- services file on the YP server.
-
- Users on systems using YP can check up on the YP services file with the
- command "ypcat services".
-
- ------------------------------
-
- Subject: 28. My inline images are showing up as "broken picture" icons.
-
- You're probably missing a menu file entry like this:
-
- Name=dummy entry for foo.gif to keep GN happy
- Path=I/foo.gif
- Attribute=invisible
-
- Every file GN serves must have a Name and Path entry in its menu file,
- or GN won't deliver it. Inline images are files, so they need their
- Name and Path entries. We've added "Attribute=invisible" to prevent
- this entry from appearing in the menu listing provided to the client.
- If the image and the HTML document are in different directories, this
- entry goes in the menu file for the directory in which the image
- resides.
-
- [ end of gn 1.8 ]
- --
- Chip Rosenthal I won't represent the US in the Summer Olympics.
- Unicom Systems Development - http://www.unicom.com/john-hiatt/
- PGP key: http://www.unicom.com/personal/chip.html
-