AWS EC2 NGINX 节点服务器 - 如何使用 Https 而不是 Http
Posted
技术标签:
【中文标题】AWS EC2 NGINX 节点服务器 - 如何使用 Https 而不是 Http【英文标题】:AWS EC2 NGINX Node server - How to use Https instead of Http 【发布时间】:2019-02-09 10:39:14 【问题描述】:我想从 HTTP 更改为使用 nginx 的 nodejs 服务使用 HTTPS,我已经创建了自签名证书
现在,我想改变
http://xx.xx.xx.xxx:3000
到
https://xx.xx.xx.xxx:3000
如何在 AWS 中使用 EC2 实例、NGINX 或 ELB 实现这一点?
【问题讨论】:
【参考方案1】:-
使用证书(ACM 或 LetsEncrypt)启用端口 443 以及端口 3000。
在 nginx 配置中的
server
块上方添加以下代码:
server listen 3000; if ( $http_x_forwarded_proto != 'https' ) return 301 https://$host$request_uri;
-
重启 nginx。
测试
该请求将访问 nginx 的 3000 端口并将其重定向到端口 443。
这未经测试,但适用于端口 80 和 443 组合。
【讨论】:
那listen
呢?我们要不要保留它80
?
你能给一些参考网站吗?或使用 ACM 的示例。以上是关于AWS EC2 NGINX 节点服务器 - 如何使用 Https 而不是 Http的主要内容,如果未能解决你的问题,请参考以下文章
如何在 AWS EC2 Linux 2 上安装 NGINX [关闭]
如何在私有子网上托管的 aws ec2 实例中安装 Nginx