Using Cloudfront as a HAProxy backend server using https

I have a CloudFront resource sitting in front of my S3 bucket. It’s accessible at —


but if I hit —


I get a 400 Bad Request. I want to point to CloudFront in my HAProxy configuration, but I can’t use the 443 port because of the above-mentioned issue. Nor can I use the https URL protocol in the server statement.

backend my_cloudfront_app
    http-response set-header Strict-Transport-Security max-age=31536000
    server my_server <id> ssl verify none

How can I hit HTTPS cloudfront from this server block in HAProxy?

Server Fault Asked by Shubham Kanodia on November 22, 2021

2 Answers

2 Answers

Isn't it the same question as this

I assume You will need to add some infos to the request headers for the cloudfront backend.

This example works with HAProxy 2.0

backend my_cloudfront_app
    http-response set-header Strict-Transport-Security max-age=31536000

    # Add backend header for cloudfront backend request
    http-request set-header Host <id>

    # maybe you will need to add a S3 prefix to the request path
    # http-request set-path <CLOUDFRONT_S3_Prefix>%[path] 

    server my_server <id> sni str(<id> ssl verify none

Answered by Aleksandar on November 22, 2021

haproxy assumes the connection to the backend is done via http. In order to connect to a backend via https, you would need a ssl after the ip:port part in the server config:

server micros-amkt-frontend <id> ssl verify none

NOTE: I'm including some extra parameters (verify none) I found in an example as I couldn't find further documentation.

Answered by NuTTyX on November 22, 2021

Add your own answers!

Related Questions

rsync unexpected remote arg: [email protected]:/path

2  Asked on July 21, 2020 by pdiracdelta


Ask a Question

Get help from others!

© 2021 All rights reserved.