6

I'm playing with GCP Load Balancing and want to redirect HTTP to HTTPS links. But cannot figure out.

My Load Balancing looks like:

Load balancer name Front End: Protocols IP Certificate HTTP x.x.x.x:80 - HTTPS x.x.x.x:443 example-com Back End: Hosts Paths Backend example.com /* webs-backend 

My webs backend is a simple nginx web server that listens on TCP/80 port. Nginx server configs:

server { server_name example.com; root /var/www/html; <snip> } 

Now with this GCP Load Balancing setup, I can access both HTTP and HTTPS, tried to configure Nginx to send cleints 301 redirect to HTTPS and it won't work. Too many redirects.

Question is, how can I configure GCP Load Balancing to redirect HTTP to HTTPS properly?

1

2 Answers 2

6

There is feature request submitted to Google product engineering team to support it on GCP HTTP(s) load-balancer. You can track this on Google public issue tracker.

There is a thread discussing the same and in NGINX server you can accomplish the same by adding following string into nginx configuration file like this:

if ($http_x_forwarded_proto = "http") { return 301 https://$host$request_uri; } 

You can check this thread as well which may help you.

1

Currently, you can do it directly from HTTP(S) Load Balancing. Google Cloud released Rewrites and Redirects support (since April 2020).

See this article to learn how to setup:

More details about this feature:

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.