Introduction
Introduction Statistics Contact Development Disclaimer Help
Init begginers tutorial - gopher-tutorials - The gopher tutorials project.
git clone git://bitreich.org/gopher-tutorials/ git://enlrupgkhuxnvlhsf6lc3fziv5…
Log
Files
Refs
Tags
---
commit 58cf4b88c986080868a330292971f1cc21bebffb
parent ec3ae31b44a84392069b3eded4c70a7c303baa00
Author: Solene Rapenne <[email protected]>
Date: Tue, 30 Jan 2018 08:29:33 +0100
Init begginers tutorial
Diffstat:
A beginners.txt | 93 +++++++++++++++++++++++++++++…
1 file changed, 93 insertions(+), 0 deletions(-)
---
diff --git a/beginners.txt b/beginners.txt
@@ -0,0 +1,93 @@
+Hello dear reader,
+
+if you have heard of gopher and you want to explore its space but that
+you are lost about how to achieve this, this text is for you. We will
+assume that you have no technical skill so everyone can read this.
+
+Gopher is the name of a protocol to share content like text, images or
+any kind of file. A network protocol is a set of rules which allow to
+create a common service for different people, everyone needing to
+respect thoses rules to be able to communicate each other. Some
+developpers will write "Clients" software for the end-user and others
+developpers will write "Servers" software which will allow to publish
+content. The Gopher protocol is so easy that anyone with basis of
+computer science can write its own client or server, and being that
+easy. Using Gopher implies to understand the protocol itself, but we
+promise it's really easy.
+
+Gopher is an enjoyable way to browse informations. Every gopherhole
+[that is the name we gave to someone gopher content] looks like
+another one. There is no way to customize a gopherhole apart from the
+text. While this can look a bit harshe, this makes Gopher
+universal. If you know how to browse one gopherhole, you will know how
+to browse all others because the way to do is consistent.
+
+So, let's speak about how Gopher works. First, Gopher requires 3
+informations if you want to get content. You will need a remote
+address to connect to [it's called an hostname, like "floodgap.com"],
+the data type and a path to the data. The url looks like this :
+
+ gopher://hostname/type/path
+
+The most important type is the type 1, which is the Gopher menu
+type. A Gopher menu is made of differents lines, each line having a
+type field to know what kind of data it lead to. It will allow you to
+browse from menu to menu or from a menu to a content (image, text,
+music...).
+
+Each line of a menu contains 4 fields separated by a Tabulate
+character. The fields are, in order :
+
+1. text to display (with the first character being the type)
+2. path to the content on the remote server
+3. hostname of the remote server which contains the content
+4. TCP Port[1] of the remote server (default is 70)
+
+The tricky part is that the type of the line is not a separate field,
+it's the first character of the line we is contained inside the first
+field. Gopher clients usually hide it when displaying the text.
+
+Here is the list of the most used data types allowed on Gopher, the
+complete list is defined in a document named RFC 1436 which defines
+the Gopher protocol :
+
+- type i is a line of text in the menu, it's not a link
+- type 0 is a link to a text document
+- type 1 is a link to another gopher menu
+- type 3 means an error
+- type 7 (search) asks a text input and lead to another menu
+- type 9 is a link to a binary file (data archives, music...)
+- type g is a link to a GIF file (animated picture)
+- type I is a link to an image file
+- type h is a link which lead to use another protocol (irc, http...)
+
+Only the types menu and search can lead to another content. Asking
+another type will lead to downloading a file.
+
+When requesting a Gopher menu, the text transferred through the
+network could be read as-this, without a Gopher client. When a server
+responds a menu with a few entries, the raw content transmitted to the
+client looks like this :
+
+iText here, others fields are set with the null value null null …
+1Another gopher menu /help/ floodgap.com 70
+1The menu leading to this help /tutorial/ bitreich.org 70
+IA cut cat picture /cute-cat.jpg floodgap.com 70
+
+The previous menu will display 4 lines, the first will be a text and
+the others last 3 lines will be links to another content, as you may
+have noticed, the server is not necesserarly the same for every
+line. Gopher allows to go to another server from another in a
+transparent manner. A Gopher client could render the previous menu
+like this, allowing to select the lines using arrows on the keyboard :
+
+ | Text here, others fields are set with the null value
+MENU | Another gopher menu
+MENU | The menu leading to this help
+IMAGE | A cut cat picture
+
+
+[1] : a TCP Port could be explained as a door on a server where a
+ network service waits behind. You need to knock to the right
+ door when you reach the server. Gopher waits by default
+ behind the port 70.
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.