Redirectory is a tool that manages redirects on a kubernetes cluster. Requests that would usually end in a 404 PAGE NOT FOUND can now be redirected to new pages specified with custom rules. It binds itself as the default backend (essential a wild card) of your ingress controller and catches all the request that the cluster can't find an ingress rule for. After that with the help of the Hyperscan regex engine the request is permanently redirected to the new destination based on the rules. If there is no rule that matches the request you can specify a default redirecting destination.
The best installation experience is with Helm. Just run:
$ helm install --name=redirectory redirectory/conf/helm
More information about this can be found here.
First we have to build the Hyperscan image because it is a base of the other two images.
Before we can use Redirectory you must have the Hyperscan library
installed. Here is a link to the
getting started
documentation. But we also have prepaired a Docker image. You can find
the Dockerfile
in: redirectory/conf/hyperscan-docker
and run the
./build.sh
file. The interaction between Python and Hyperscan is made
with this awesome library
python-hyperscan.
There are two images. One for the management pod and one for the worker
pods. The two files are correspondingly Dockerfile_Management
and
Dockerfile_Worker
. You can run the ./build_redirectory_images.sh
file to build them both.
The documentation is hosted on Read the Docs and can be found at redirectory.readthedocs.io.
Redirectory is licensed under the BSD 3-Clause License License. See the LICENSE file in the project repository.