典型堆栈,Nginx、varnish、php 7。
如果我将 nginx 中的 vhost 设置为 80,我可以轻松登录。如果我将其移动到 8080,则无法登录(在故障排除时已验证 varnish/nginx 监听正确的端口。wordpress 没有问题,也尝试了 adminer,效果很好,此时可能只会使用它或其他替代方案
blofish 密钥在 config.inc.php 中设置,PmaAbsoluteUri 也已设置,使用 cookie auth。php 可以写入会话目录,mcrypt 已启用并出现在 phpinfo 中
我配置了 varnish 来忽略我已经用尽的有效故障排除。
直接从官方网站使用最新的 phpmyadmin 版本
答案1
答案的关键部分:
因为我将它放在清漆后面,所以它在端口 8080 上。
需要编辑 Nginx 配置以在后面添加以下内容include fastcgi_params;
fastcgi_param SERVER_PORT 80;
此外,在 Varnish4 vcl 中,return(pass) 还不够好,因为运行常见 wordpress vcl 的其余例程将剥离 phpmyadmin cookie!,请改用 return(pipe)(许多旧的谷歌搜索结果都使用 pass)
最后,清漆日志记录为http://网址(至少在我的自定义日志格式中),不要让它误导你:
if (req.http.Host == "www.domain.com) {
return (pipe);
如果你怀疑它没有捕获到 URL/正则表达式,请通过return(pipe);
紧接着粘贴以下内容进行确认sub vcl_recv {
不需要对 proypass 或 redirect off 进行任何更改,不需要在 varnish 配置中添加 vcl_fetch 子项。
希望这对其他人有帮助,我搜索了谷歌并找到了几十个不起作用的“解决方案”。