EC2使用HTTPS在CloudFront后面运行NGINX



我已经为使用Route53域的S3存储桶配置了CloudFront分发,并使用公共证书启用了HTTPS。

我想将这个CloudFront分发版与另一个源(它是一个运行NGINX的EC2实例,作为同一实例上应用程序的反向代理(一起使用,但我也需要启用HTTPS。

我用NGINX在EC2上启用HTTPS的正常方式是只设置NGINX配置并指向我的域";记录";到实例,然后使用Let's Encrypt请求证书。但是,在CloudFront之后,我应该怎么做呢?我不会使用Let's Encrypt(只使用它不一定很重要(,我想像使用S3一样使用AWS公共证书。

我可以将NGINX配置为在端口80上侦听,并将此EC2实例添加为CloudFront分发版上的源,然后启用HTTPS并在那里选择我的公共证书吗?或者应该如何做到这一点才能正常工作?

这一次我不打算使用负载均衡器,我想要EC2和CloudFront之间的直接连接。但我也想知道如何在使用负载均衡器时设置它(为将来(。

我可以将NGINX配置为在端口80上侦听,并将此EC2实例添加为CloudFront分发版上的原点,然后启用HTTPS并在那里选择我的公共证书吗?或者应该如何做到这一点才能正常工作?

是的,你可以这样做,但所有的流量模式都是:

Clinet---(HTTPS)--->CF---(HTTP)--->Instance

这意味着一半的连接(CF->实例(将在HTTP中,这可能不是所希望的。

如果您希望在每个路径上都有HTTPs,那么您仍然需要在实例上有公共有效的SSL证书。CF无法使用自签名证书。

最新更新