GPL-3.0-only licensed by sternenseemann
Maintained by [email protected]
This version can be pinned in stack with:gopher-proxy-,2665

Module documentation for

There are no documented modules for this package.


gopher-proxy is a tiny wai application running on top of warp. It acts as a gopher-over-http proxy for a specific server, e. g. to http-ify a gopher space.


Example usage:

gopher-proxy --host --http-port 8080

In this particular example, gopher-proxy would proxy the gopher server and bind its http service on (to be proxied to by another web server like nginx).

These are all optional flags which allow to change default behavior:

  • --port: The port of the gopher server, defaults to 70
  • --css-path: Use some specific css file instead of the default one.
  • --css-url: The http path of the css file, defaults to /gopher-proxy.css (should be changed, if your gopher server has a file with the same name
  • --base-url: The path of the directory which will appear as root directory of gopher-proxy to the user, defaults to /. Should be changed if you configured your proxying web server to expose gopher-proxy as, say /gopher-space/.
  • --listen-public: If this flag is set, gopher-proxy will accept connections on its public IP address(es).
  • --default-mime-type: Mime type to use if spacecookie can’t guess it, defaults to “application/octet-stream”
  • --timeout: connection timeout in milliseconds, defaults to 10 seconds.
  • --server-name: The server name of the server to proxy, defaults to the host name. This value is used to detect wether a menu item is pointing to another gopher server than the proxied one. This is particularly useful, if you use e. g. instead of the public host name.
  • --title: Sets the first part of the HTML title-tag, defaults to gopher-proxy.

Things to keep in mind

  • Your gopher server must send UTF-8-encoded gopher responses
  • gopher-proxy might misinterpret certain content, because of the context-sensitive nature of gopher
  • gopher-proxy does not support Gopher+


  • [ ] Add Logging


Revision history for gopher-proxy – 2017-01-06

  • Add missing documentation for --title – 2017-01-06

  • Add two options: --title and --server-name
  • Fix the README on hackage
  • Elaborate the package description – 2017-01-05

  • Fixed a build issue – 2017-01-04

  • Updated package metadata – 2017-01-04

  • First version. Released on an unsuspecting world.