Question

How to add rewrite rules to Digital Ocean Load Balancer

Posted November 3, 2021 73 views
NginxNetworkingLoad BalancingDigitalOcean Managed Load BalancersDigitalOcean Droplets

I have setup a load balancer and have added droplets to it. I have mapped a domain name as well and my website is accessible and runs through the load balancer successfully. My question is how can I add a rewrite rule that will force users to https://www.mydomain.com instead of just https://mydomain.com?

From what I’ve gathered the load balancer is using nginx, so I know this is possible, but how can I access the config? Is it possible to ssh into the load balancer and manually edit the file? If not what are my options to achieve the desired behavior?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
Submit an Answer
1 answer

Hello,

I believe that the DigitalOcean Load Balancers are based on HAProxy. Also I am afraid that as these are managed services, you don’t have direct SSH access. In order to have full control over a load balancer, you could deploy HAProxy on a Droplet, that way you can make custom changes as needed.

Here is a step by step guide on how to do that:

https://www.digitalocean.com/community/tutorials/how-to-set-up-highly-available-haproxy-servers-with-keepalived-and-floating-ips-on-ubuntu-14-04

Regarding the rewrite rule, with the load balancers, you could add HTTP to HTTPS redirects but rewrite rules like non-www to www redirects are not supported on the load balancer level.

What you could do instead is to enforce the www redirect on your application level or if you are using Cloudflare to manage your DNS, you could enforce the www rewrite rule by following the steps here:

https://community.cloudflare.com/t/redirect-example-com-to-www-example-com/78348

Best,
Bobby

by Justin Ellingwood
High availability is a function of system design that allows an application to automatically restart or reroute work to another capable system in the event of a failure. In terms of servers, there are a few different technologies needed to set up a highly available system. ...