A time machine proxy. This proxy enables access to specific historical versions of ontologies, ensuring that they can be retrieved even if no longer available at their original source.
originalFailoverLive
)original
originalFailoverLiveLatest
latestArchived
timestampArchived <timestamp>
Arguments: 2 required + 1 optional (default is ntriples,enforcedPriority,false
)
format: Desired representation of the (ontology) resource, one of:
"turtle"
"ntriples"
"rdfxml"
"htmldocu"
precedence: Controls how the desired format interacts with the client's Accept
headers:
default: The format is used as the default fallback if no format is specified in the Accept
header by the client.
enforcedPriority: Boosts the priority of the specified format as highest, even if the client specifies other formats with higher priority.
enforcedPriority ntriples
:Accept
header.ntriples
will be added with the highest priority (1.0 score) at the beginning of the Accept
string.always: Ignores the client’s preferences in the Accept
header.
NOTE: By default, these parameters only affect requests served by Archivo. If they should apply to all upstream connections, use patchAcceptUpstream
.
ATTENTION: In default
or enforcedPriority
mode, an HTTP error code 406 is thrown if the request triggers a response from Archivo, but no supported format matches the (modified) Accept
header (e.g., Accept
header is just JSON-LD).
patchAcceptUpstream (optional, default: false
)
Defines whether the Accept
header is patched only for proxy internal behavior or is actually sent in the changed form to the upstream server.
disabled
)(If a CA cert is provided, this option can be used to control HTTPS interception for a specific set of fully qualified domain names (FQDNs), default is none
):
none (default)
No HTTPS interception is performed, but the request is passed through.
NOTE: When hosting this publicly, this can be abused by clients to connect to any port and e.g. send spam messages.
block
All HTTPS connections will be blocked.
archivo
HTTPS interception only for FQDNs that have at least one ontology in Archivo.
all
For every request to every domain (FQDN).
off
)--auth user:pass
).95.217.207.179:8182
git clone https://github.com/abhinavsingh/proxy.py.git
cd proxy.py
make ca-certificates
cp ca-cert.pem ~/ontology-time-machine/ca-cert.pem
cp ca-key.pem ~/ontology-time-machine/ca-key.pem
cp ca-signing-key.pem ~/ontology-time-machine/ca-signing-key.pem
poetry install
poetry shell
python3 ontologytimemachine/custom_proxy.py --ontoFormat ntriples --ontoVersion originalFailoverLiveLatest --ontoPrecedence enforcedPriority