Sign inSign up

cttynul/waybackproxy

By cttynul

Updated about 4 years ago

HTTP proxy for tunneling requests through the Internet Archive Wayback Machine

Image
1

10K+

cttynul/waybackproxy repository overview

WaybackProxy

WaybackProxy is a retro-friendly HTTP proxy which retrieves pages from the Internet Archive Wayback Machine or OoCities and delivers them in their original form, without toolbars, scripts and other extraneous content that may confuse retro browsers.

1999 Google viewed on Internet Explorer 4.0 on Windows 95

Setup

A Dockerfile is included that allows you to run WaybackProxy from a docker container.

Environment Variables

When deploying via Docker, the config.json can be customized by specifying environment variables when creating the docker container. The environment variables match the example config.json in this repository. Below is a complete list:

ParameterDefaultDescription
LISTEN_PORT8888Listen port for the HTTP proxy
DATE20011025Date to get pages from Wayback. YYYYMMDD, YYYYMM and YYYY formats are accepted, the more specific the better.
DATE_TOLERANCE365Allow the client to load pages and assets up to X days after DATE. Set to None to disable this restriction.
GEOCITIES_FIXTrueSend Geocities requests to oocities.org if set to True.
QUICK_IMAGESTrueUse the original Wayback Machine URL as a shortcut when loading images.
WAYBACK_APITrueUse the Wayback Machine Availability API to find the closest available snapshot to the desired date, instead of directly requesting that date.
CONTENT_TYPE_ENCODINGTrueAllow the Content-Type header to contain an encoding
SILENTTrueDisables logging to STDOUT if set to True
SETTINGS_PAGETrueEnables the settings page on http://web.archive.org if set to True
Usage
docker run [-d] \
    --name=waybackproxy \
    [-e <VARIABLE>=<VALUE>]... \
    [-p <HOST_PORT>:<CONTAINER_PORT>]... \ 
    cttynul/waybackproxy

Example:

docker run -d --name=waybackproxy -e DATE=20011025 -p 8888:8888 cttynul/waybackproxy

Known issues and limitations

  • The Wayback Machine itself is not 100% reliable. Known issues include:
    • Pages newer than the specified date (setting a specific YYYYMMDD date instead of a wider YYYYMM or YYYY helps with that);
    • Random broken images;
    • Strange 404 errors caused by bad server responses or incorrect URL capitalization at archival time;
    • Infinite redirect loops;
    • Server errors when it's having a bad day.
  • WaybackProxy will work around some redirection scripts (example: http://example.com/redirect?to=http://...) which are not archived by the Wayback Machine, but the destination URLs are sometimes not archived either.
  • WaybackProxy is not a generic proxy. The POST and CONNECT methods are not implemented.
  • Transparent proxying mode requires HTTP/1.1 and therefore cannot be used with some really old (pre-1996) browsers. Use standard mode with such browsers.

Tag summary

Content type

Image

Digest

sha256:e001d5b1d

Size

335.1 MB

Last updated

about 4 years ago

docker pull cttynul/waybackproxy