配置nginx以将pgadmin映射到URI

问题描述 投票:0回答:1

我有一个nginx和一个pgadmin Docker容器相互连接。只有nginx容器暴露在外面。如何将pgadmin映射到子URI?

如果主机是example.com,我希望pgadmin可以到达example.com/pgadmin/。到目前为止,我在我的nginx.conf文件中有这个:

location ^~ /pgadmin/ {
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_pass http://pgadmin:80/;
}

example.com/pgadmin/的请求通过pgadmin但是当pgadmin重定向到登录页面时,它会重定向到example.com/login?next=%2F,而不是example.com/pgadmin/login?next=%2F

我如何让pgadminexample.com/pgadmin工作?

nginx pgadmin
1个回答
0
投票

我知道你想把http://pgadmin:80/映射到http://example.com/pgadmin/。在hosts文件中添加以下条目以将pgadmin映射到example.com

pgadmin    example.com

现在将:80映射到/pgadmin,在你的nginx.conf中添加以下内容:

location /pgadmin {
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_pass http://pgadmin:80/;
}
© www.soinside.com 2019 - 2024. All rights reserved.