Update documentation around Gopher config

This commit is contained in:
Bryan Ashby
2022-08-21 13:43:03 -06:00
parent c8df7f3d6b
commit 92ca571e40
4 changed files with 23 additions and 10 deletions

View File

@@ -3,7 +3,7 @@ layout: page
title: Gopher Server
---
## The Gopher Content Server
The Gopher *content server* provides access to publicly exposed message conferences and areas over Gopher (gopher://) as well as any other content you wish to serve in your Gopher Hole!
The Gopher *content server* provides access to publicly exposed message conferences and areas over Gopher (`gopher://`) as well as any other content you wish to serve in your Gopher Hole!
## Configuration
Gopher configuration is found in `contentServers.gopher` in `config.hjson`.
@@ -15,7 +15,7 @@ Gopher configuration is found in `contentServers.gopher` in `config.hjson`.
| `port` | :-1: | Override the default port of `8070` |
| `publicHostname` | :+1: | Set the **public** hostname/domain that Gopher will serve to the outside world. Example: `myfancybbs.com` |
| `publicPort` | :+1: | Set the **public** port that Gopher will serve to the outside world. |
| `messageConferences` | :-1: | An map of *conference tags* to *area tags* that are publicly exposed via Gopher. See example below. |
| `exposedConfAreas` | :-1: | An map of *conference tags* to an object containing `include`'d *area tags*, and exceptions via `exclude`'d *area tags*. Area tags may contain wildcards of '*' and '?'. Any area tags that match will be exposed to Gopher. See **Example Configuration** below.
Notes on `publicHostname` and `publicPort`:
The Gopher protocol serves content that contains host/domain and port even when referencing it's own documents. Due to this, these members must be set to your publicly addressable Gopher server!
@@ -43,8 +43,8 @@ iWelcome to a Gopher server! {publicHostname} {publicPort}
.
```
### Example
Let's suppose you are serving Gopher for your BBS at `myfancybbs.com`. Your ENiGMA½ system is listening on the default Gopher `port` of 8070 but you're behind a firewall and want port 70 exposed to the public. Lastly, you want to expose some fsxNet areas:
### Example Configuration
Let's suppose you are serving Gopher for your BBS at `myfancybbs.com`. Your ENiGMA½ system is listening on the default Gopher `port` of 8070 but you're behind a firewall and want port 70 exposed to the public. Lastly, you want to expose some ArakNet areas:
```hjson
contentServers: {
@@ -55,9 +55,12 @@ contentServers: {
// Expose some public message conferences/areas
messageConferences: {
fsxnet: { // fsxNet's conf tag
// Areas of fsxNet we want to expose:
"fsx_gen", "fsx_bbs"
araknet: { // ArakNet's conference tag
// start with all areas exposed
include: [ "*" ]
// ...except the +op and Phenom private areas
exclude: [ "ark_sysop", "ark_phenom" ]
}
}
}