【发布时间】:2017-09-07 23:44:31
【问题描述】:
我在 Nginx 反向代理后面使用 Piwik,并且 Piwik 在 Apache 服务器上运行。我还使用了重写规则( /piwik/ 到 / )。
对于 Mac 上的 Chrome 和 Safari,Piwik 的登录过程不起作用(我只收到配置浏览器 cookie 和代理服务器的一般错误消息)。
但我当前的配置在 Mac 的 FirefoxDeveloperEdition 中运行:
nginx.conf:
location /piwik {
rewrite ^/piwik/(.*)$ /$1 break;
proxy_pass http://piwik;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $http_host/piwik;
}
config.ini.php
[General]
proxy_client_headers[] = HTTP_X_FORWARDED_FOR
proxy_host_headers[] = HTTP_X_FORWARDED_HOST
当我将 nginx.conf 中的 /piwik 删除到:
proxy_set_header X-Forwarded-Host $http_host;
登录正常,但我遇到了另外 2 个问题:
- 登录后我错误地重定向到根目录
/(不再是 Piwik),但重新打开 Piwik 后,我已登录 - 由于错误的 URL
http://localhost:2020/plugins/Morpheus/images/logo.svg而不是http://localhost:2020/piwik/plugins/Morpheus/images/logo.svg导致徽标丢失
我也会保留重写规则,因为 Apache 服务器是一个通用的 docker 容器。
可能我必须分析认证失败的情况,但我还没有找到正确的行。
【问题讨论】:
标签: authentication url-rewriting matomo nginx-reverse-proxy