
* removed korean documentation Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * removed CN and KOR readme Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * changed to the press theme Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * first changes Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * fixe H3 vs H1 issues Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * added missing png Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * added missing file Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * fixed warnings Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * moved documents Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * removed obsolete files Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * removed obsolete folder Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * removed obs. file Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * added some final changes Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com> * removed obs. reference Signed-off-by: Jürgen Eckel <juergen@riddleandcode.com>
2.0 KiB
Using a Reverse Proxy
You may want to:
- rate limit inbound HTTP requests,
- authenticate/authorize inbound HTTP requests,
- block requests with an HTTP request body that's too large, or
- enable HTTPS (TLS) between your users and your node.
While we could have built all that into Planetmint Server, we didn't, because you can do all that (and more) using a reverse proxy such as NGINX or HAProxy. (You would put it in front of your Planetmint Server, so that all inbound HTTP requests would arrive at the reverse proxy before maybe being proxied onwards to your Planetmint Server.) For detailed instructions, see the documentation for your reverse proxy.
Below, we note how a reverse proxy can be used to do some Planetmint-specific things.
You may also be interested in our NGINX configuration file template (open source, on GitHub).
Enforcing a Max Transaction Size
The Planetmint HTTP API has several endpoints,
but only one of them, the POST /transactions
endpoint,
expects a non-empty HTTP request body:
the transaction being submitted by the user.
If you want to enforce a maximum-allowed transaction size
(discarding any that are larger),
then you can do so by configuring a maximum request body size
in your reverse proxy.
For example, NGINX has the client_max_body_size
configuration setting. You could set it to 15 kB
with the following line in your NGINX config file:
client_max_body_size 15k;
For more information, see the NGINX docs about client_max_body_size.
Note: By enforcing a maximum transaction size, you indirectly enforce a maximum crypto-conditions complexity.