我想从HTTP更改并使用nginx将HTTPS用于nodejs服务,我已经创建了自签名证书
现在,我想从
http://xx.xx.xx.xxx:3000
自
https://xx.xx.xx.xxx:3000
如何在 AWS 中使用 EC2 Instance、NGINX 或 ELB 实现这一点?
- 使用证书(ACM 或 LetsEncrypt(启用端口 443 以及端口 3000。
- 在nginx配置中的
server
块上方添加以下代码:
server { listen 3000; if ( $http_x_forwarded_proto != 'https' ) { return 301 https://$host$request_uri; } }
- 重新启动nginx。
- 测试
该请求将命中端口 3000 上的 nginx,并将其重定向到端口 443。
这是未经测试的,但在端口 80 和 443 组合上对我有用。