nginx AWS弹性beanstalk上的默认代理配置将请求转发到的Web应用程序的端口号是多少?

qnakjoqk  于 2023-10-17  发布在  Nginx
关注(0)|答案(3)|浏览(175)

this pag e上,在“反向代理配置”下发生了混淆,它被提到了:
默认情况下,Elastic Beanstalk将代理配置为将端口80上的请求转发到端口5000上的主Web应用程序。
this page上,它是这样被提到的:
默认情况下,Elastic Beanstalk配置代理将请求转发到端口8080上的应用程序。
那么,端口5000还是端口8080是请求转发的默认端口?

zaqlnxep

zaqlnxep1#

Amazon Linux 2上为8080。您可以通过检查EB示例上的默认nginx设置来检查它:

cat /etc/nginx/conf.d/elasticbeanstalk/00_application.conf 

location / {
    proxy_pass          http://127.0.0.1:8080;
    proxy_http_version  1.1;

    proxy_set_header    Connection          $connection_upgrade;
    proxy_set_header    Upgrade             $http_upgrade;
    proxy_set_header    Host                $host;
    proxy_set_header    X-Real-IP           $remote_addr;
    proxy_set_header    X-Forwarded-For     $proxy_add_x_forwarded_for;
}

5000可能来自Amazon Linux 1,不确定。

zy1mlcev

zy1mlcev2#

如果您使用的是Amazon Linux 2docker平台,则默认端口为8000

cat /etc/nginx/conf.d/elasticbeanstalk-nginx-docker-upstream.conf
upstream docker {
    server 172.17.0.2:8000;
    keepalive 256;
pgx2nnw8

pgx2nnw83#

这是带有docker设置的默认ElasticBeanstalk:
请求命中端口80,这命中示例,该示例转到Nginx代理,在那里它被转发到Docker,默认情况下,Docker在端口8000上公开它的服务。
默认情况下,ElasticBeanstalk在端口80上运行侦听器,您可以在AWS ElasticBeanstalk环境中通过检查来确认它:

enviornment name > configuration > load balancer > Listeners

您可以通过运行以下命令来确认Nginx转发端口:

$ cat /etc/nginx/conf.d/elasticbeanstalk-nginx-docker-upstream.conf 

upstream docker {
    server 172.17.0.2:8000;
    keepalive 256;

并通过运行以下命令检查Docker的暴露端口:

$ cat /var/app/current/Dockerfile

FROM python:2.7

# Add sample application
ADD application.py /tmp/application.py

EXPOSE 8000

# Run it
ENTRYPOINT ["python", "/tmp/application.py"]

相关问题