配置反向代理
Elastic Beanstalk 使用 nginx 作为反向代理,将应用程序映射到端口 80 上的 Elastic Load Balancing 负载均衡器。Elastic Beanstalk 提供一个默认 nginx 配置,您可以扩展该配置,也可以使用您自己的配置完全覆盖该配置。
默认情况下,Elastic Beanstalk 将 nginx 代理配置为通过端口 5000 向您的应用程序转发请求。您可以覆盖默认端口,方法是将 PORT
环境属性设置为主应用程序侦听的端口。
应用程序侦听的端口不会影响 nginx 服务器为了从负载均衡器接收请求而侦听的端口。
所有 Amazon Linux 2 平台都支持统一的代理配置功能。有关在运行 Amazon Linux 2 的新 Amazon Corretto 平台版本上配置代理服务器的详细信息,请展开扩展 Elastic Beanstalk Linux 平台中的反向代理配置部分。
在 Amazon Linux AMI(在 Amazon Linux 2 之前)上配置代理
如果您的 Elastic Beanstalk Go 环境使用 Amazon Linux AMI 平台版本(在 Amazon Linux 2 之前),请阅读本节中的信息。
Elastic Beanstalk 使用 nginx 作为反向代理,将应用程序映射到端口 80 上的负载均衡器。如果您想提供自己的 nginx 配置,可以覆盖 Elastic Beanstalk 提供的默认配置,方法是在源包中包含 .ebextensions/nginx/nginx.conf
文件。如果此文件存在,Elastic Beanstalk 会使用它来替代默认的 nginx 配置文件。
如果除 nginx.conf
http
块中的指令外,您还想包含其他指令,可以在源包的 .ebextensions/nginx/conf.d/
目录中提供其他配置文件。此目录中的所有文件都必须采用 .conf
扩展名。
要利用 Elastic Beanstalk 提供的功能(例如增强型运行状况报告和监控、自动应用程序映射和静态文件),您必须在 nginx 配置文件的 server
块中包含下面一行:
include conf.d/elasticbeanstalk/*.conf;