Kong-plugin-url-rewrite
Kong API Gateway plugin for url-rewrite purposes. This plugin has been tested to work along with kong >= 2.6.x, for a legacy version of this plugin, please check this link.
The Problem
When using Kong, you can create routes that proxy to an upstream. The problem lies when the upstream has an url that is not very friendly to your clients, or restful, or even pretty. When you add a Route in Kong, you have a somewhat limited url rewrite capability. This plugin simply throws away the url set in Kong route and uses the url set in it's configuration to proxy to the upstream. This gives you full freedom as to how to write your url's in Kong and inner services as well.
Project Structure
The plugin folder should contain at least a schema.lua
and a handler.lua
, alongside with a spec
folder and a .rockspec
file specifying the current version of the package.
Rockspec Format
The .rockspec
file should follow LuaRocks' conventions
Configuration
Enabling the plugin on a Route
Configure this plugin on a Route with:
curl -X POST http://kong:8001/routes/{route_id}/plugins \
--data "name=kong-plugin-url-rewrite" \
--data "config.url=http://new-url.com"
- route_id: the id of the Route that this plugin configuration will target.
- config.url: the url where you want kong to execute the request.
Developing
In docker
docker build . -t kong-plugin-url-rewrite-dev
docker run -it -v ${PWD}/url-rewrite:/url-rewrite kong-plugin-url-rewrite-dev bash
Credits
made with