【问题标题】:How to serve phpmyadmin over https with nginx如何使用 nginx 通过 https 服务 phpmyadmin
【发布时间】:2020-12-24 15:58:56
【问题描述】:

如何正确配置 nginx 和 phpmyadmin?我已经配置了nginx,可以通过nginx访问phpmyadmin登录页面但是无法登录,当我尝试登录时显示Failed to set session cookie. Maybe you are using HTTP instead of HTTPS to access phpMyAdmin.

我正在通过https://example.com/phpmyadmin/访问

这是 nginx 配置

location /myphpadminroute/{
    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_set_header host $host;
    proxy_pass_request_headers      on;

    root path_to_phpmyadmin/phpMyAdmin/;
    proxy_pass http://localhost:8080/phpmyadmin/; # apache is running on 8080
}

使用http://localhost:8080/phpmyadmin/https://localhost:8443/phpmyadmin/ 的apache url 时登录工作正常

我也尝试在 nginx 中使用 proxy_pass https://localhost:8443/phpmyadmin/;,但出现同样的错误。

是nginx的配置问题还是phpmyadmin的问题,我就是想不通。

编辑:cookie 路径不正确 phpMyAdmin_https=utd7tbihn9qp9r4e0f0dvj6tpo; path=/phpmyadmin/; secure; HttpOnly 如果我将 nginx 路径更改为 /phpMyAdmin/ 现在它工作正常我如何在 phpmyadmin 中更改 cookie 路径

【问题讨论】:

    标签: nginx phpmyadmin


    【解决方案1】:

    终于可以正常使用了。

    对于那些也面临此类问题的人来说,诀窍是将config.inc.php $cfg['PmaAbsoluteUri'] 中的变量设置为您的用户应该看到的网址

    例如$cfg['PmaAbsoluteUri'] = https://example.com/myphpadminroute

    【讨论】:

      猜你喜欢
      • 2021-08-07
      • 2011-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-18
      • 2017-01-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多