gpt4 book ai didi

nginx - 通过 nginx 反向代理在 docker 容器内的 phpMyAdmin

转载 作者:行者123 更新时间:2023-12-02 01:11:53 29 4
gpt4 key购买 nike

我安装了phpMyAdmin docker image并运行它

# docker run --name phpmyadmin -d --link mariadb:db -p 8081:80 -e PMA_ABSOLUTE_URI=http://servm3/pma --restart unless-stopped phpmyadmin/phpmyadmin

访问http://servm3:8081工作正常。变量 PMA_ABSOLUTE_URI 用于反向代理,如 docker page 中所示。 .

然后我设置 nginx(本地安装,不在 docker 内部)作为反向代理(适用于其他几个应用程序,例如鳄梨酱)。

在我的 nginx.conf 中我有:

location /pma/ {               
proxy_pass http://localhost:8081/;
proxy_buffering off;
}

访问http://servm3/pma在浏览器选项卡上显示网站图标,但只显示空白页面,而不是登录页面。删除前面的“/”并重新启动 nginx 只会给出 404。

# docker logs phpmyadmin

除了 php 和 nginx 服务启动信息外,不显示任何内容,与 phpmyadmin 无关。

本地 nginx 访问日志显示多个 304 和 404 代码以及一些 200,错误日志不存在。详细日志可参见here on pastebin .

我希望有人能够告诉我如何让 nginx 作为 phpMyAdmin docker 容器的反向代理。

如果缺少某些重要信息,请告诉我。

最佳答案

请务必包含重写:

location  ~ \/pma {
rewrite ^/pma(/.*)$ $1 break;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://localhost:8081;
}

您还需要在 docker-compose.yml 中设置 PMA_ABSOLUTE_URI 环境变量:

PMA_ABSOLUTE_URI: https://yourdomain.com/pma/

如果您运行的是 4.6.5 或更高版本的 docker phpmyadmin,则应该进行设置。要更新,您可以 docker pull 来拉取最新版本。即

docker pull phpmyadmin/phpmyadmin

关于nginx - 通过 nginx 反向代理在 docker 容器内的 phpMyAdmin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44499620/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com