如何禁用日志记录IP地址?

您好,
我已成功运行 Discourse,现在希望禁用记录用户的 IP 地址。
关于此问题作为欧盟 GDPR(2018、2019)的一部分已有许多讨论,但我尚未找到具体的解决方案。

https://meta.discourse.org/t/disabling-unnecessary-logging-for-gdpr-compliance/86301

如果有人能指导我找到相关方法,我将不胜感激!

你好 @codinghorror
关于你在 Possible to not log user IP addresses? - #10 by codinghorror 中提到的建议,是否有相关的“操作指南”?
我看到 2018 年因欧盟 GDPR 有很多关于禁用 IP 日志的需求,因此我预计针对这一问题应该已有简单的解决方案。

你需要 IP 地址来打击滥用行为,因此我认为大多数人已经认定 Discourse 管理 IP 地址的方式并不违反 GDPR。据我所知,目前尚未出现能够实现你所要求功能的插件。

一个简单的解决方案是使用外部反向代理,并且不要将 Discourse 配置为使用反向代理的 IP 地址(默认情况下会发生这种情况)。

对于将来的搜索者:您可以在 Discourse 实例前面使用 NGINX,您可以将 X-Real-IP 设置为固定 IP 127.0.0.1

  location / {
    proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
    proxy_set_header Host $http_host;
    proxy_http_version 1.1;
    proxy_set_header X-Forwarded-Proto https;
    proxy_set_header X-Real-IP 127.0.0.1;
  }

不要省略它,否则您将遇到错误并且应用程序将无法启动:

Completed 500 Internal Server Error in 149ms (Views: 11.1ms | ActiveRecord: 0.0ms | Allocations: 70970)
PG::InvalidTextRepresentation (ERROR:  invalid input syntax for type inet: "unix:"
LINE 7:     client_ip = 'unix:',
                        ^
)