add archived mail conversation about the 'h' type - gopher-protocol - Gopher Protocol Extension Project
 (HTM) git clone git:// git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/gopher-protocol
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Tags
 (DIR) commit a71033e39b81f724f0cb73f0542fd6e0771f9803
 (DIR) parent 7c5d9f434a37a64f1fd5b64991df8e154f1dd84d
 (HTM) Author: Hiltjo Posthuma <>
       Date:   Mon,  8 Aug 2022 19:00:48 +0200
       add archived mail conversation about the 'h' type
         A references/h_type.txt               |     143 +++++++++++++++++++++++++++++++
       1 file changed, 143 insertions(+), 0 deletions(-)
 (DIR) diff --git a/references/h_type.txt b/references/h_type.txt
       @@ -0,0 +1,143 @@
       +Received: with LISTAR (v1.0.0; list gopher); Tue, 12 Feb 2002 14:19:47 -0500 (EST)
       +Return-Path: <>
       +Received: from ( [])
       +        (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits))
       +        (Client CN "", Issuer CN "John Goerzen -- Root CA" (verified OK))
       +        by (Postfix) with ESMTP
       +        id 4FE9F3B860; Tue, 12 Feb 2002 14:19:47 -0500 (EST)
       +Received: by (Postfix, from userid 1000)
       +        id 6E73775836; Tue, 12 Feb 2002 14:19:46 -0500 (EST)
       +Subject: [gopher] Links to URL
       +References: <>
       +From: John Goerzen <>
       +Date: 12 Feb 2002 14:19:46 -0500
       +In-Reply-To: <>
       +Message-ID: <>
       +Lines: 103
       +User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Common Lisp)
       +MIME-Version: 1.0
       +Content-type: text/plain; charset=us-ascii
       +Content-Transfer-Encoding: 8bit
       +X-archive-position: 439
       +X-listar-version: Listar v1.0.0
       +Precedence: bulk
       +List-help: <>
       +List-unsubscribe: <>
       +List-software: Listar version 1.0.0
       +X-List-ID: Gopher <>
       +List-subscribe: <>
       +List-owner: <>
       +List-post: <>
       +List-archive: <>
       +X-list: gopher
       +I think it is best to start small with modifications to the protocol.
       +Therefore, I propose the following:
       +Method to link to URLs from Gopherspace
       +1. Protocol issues
       +Links to URLs from a gopher directory shall be defined as follows:
       + Type -- the appropriate character corresponding to the type of the
       + document on the remote end; h if HTML.
       + Path -- the full URL, preceeded by "URL:".  For instance:
       +         URL:
       + Host, Port -- pointing back to the gopher server that provided
       + the directory for compatibility reasons.
       + Name -- as usual for a Gopher directory entry.
       +2. Conforming client requirements
       +A client adhering to this specification will, when it sees a Gopher
       +selector with a path starting with URL:, interpret the path as a URL.
       +It will ignore the host and port components of the Gopher selector,
       +using those components from the URL instead (if applicable).
       +3. Conforming server requirements
       +A server with Gopher URL support will not, in most cases, need to take
       +extra steps to provide this support beyond those outlined in
       +Compatibility below.  Servers not implementing those steps outlined in
       +Compatibility will be deemed to be not in compliance.
       +4. Authoring compliance
       +The use of URL: selectors should be avoided wherever possible.  In
       +particular, it should be avoided when pre-existing gopher facilities
       +exist for the type of content linked.  The following URL types are
       +explicitly prohibited by this specification:
       +  gopher
       +  telnet
       +  tn3270
       +Authors should avoid links to any document not of HTML type whenever
       +possible.  Linking to non-HTML documents will break compatibility with
       +Gopher browsers that do not implement this specification.  The ranks
       +of these browsers include most Web browsers, so that is a significant
       +5. Compatibility
       +Links to HTML pages may be accomodated even for non-comforming
       +browsers by providing additional capabilities in the server.
       +When a non-conforming browser is instructed to follow a link to a URL,
       +it will contact the Gopher server that provided the menu (since these
       +are specified per section 1).
       +When a conforming Gopher server receives a request whose path begins
       +with URL:, it will write out a HTML document that will send the
       +non-compliant browser to the appropriate place.  One such conforming
       +document is:
       +  <HTML>
       +  <HEAD>
       +  <META HTTP-EQUIV="refresh" content="2;URL=">
       +  </HEAD>
       +  <BODY>
       +  You are following a link from gopher to a web site.  You will be
       +  automatically taken to the web site shortly.  If you do not get sent
       +  there, please click
       +  <A HREF="">here</A> to go to the web site.
       +  <P>
       +  The URL linked is:
       +  <P>
       +  <A HREF=""></A>
       +  <P>
       +  Thanks for using gopher!
       +  </BODY>
       +  </HTML>
       +This document may be any desired by the server authors, but must
       +adhere to these requirements:
       + * It must provide a refresh of a duration of 10 seconds or less
       + * It must not use IMG tags, frames, or have any reference whatsoever
       +   to content outside that particular file -- other than the link
       +   to the real destination.
       + * It must not use JavaScript.
       + * It must adhere to the W3C HTML 3.2 standard.
       +When a non-conforming Gopher client finds a reference to a HTML file
       +(type h), it will open up the file via Gopher (getting the redirect
       +document) but using a web browser.  The web browser will then be
       +redirected to the actual link destination.  Conforming clients will
       +follow the link directly.