您确定吗?因为如果属实,我将立即设置反向代理。
编辑
AI 也这么说。所以,将使用反向代理。
AI 回答
Discourse 的 GeoBlock 插件使用 MaxMindDB 数据库,根据用户的 IP 地址确定其国家或网络 (ASN),但实际的阻止发生在应用程序级别(在 Discourse 应用内部),而不是在服务器或网络/防火墙级别。
实际操作中:
- 如果访问者的 IP 匹配被阻止的国家或网络,Discourse 应用程序将向访问者返回一个错误页面,而不是论坛内容。
- 阻止发生在 HTTP 请求到达 Discourse 应用程序之后。换句话说,请求仍然会通过您的 Web 服务器(例如 nginx)和 Docker 容器,并在用户被阻止之前到达 Discourse 软件。
- 这意味着即使最终被 Discourse 阻止,您仍然会在服务器和代理/nginx 日志中看到这些请求。
- 如果您需要“硬”阻止(在请求到达 Discourse 应用之前就阻止访问),您需要一个服务器级别的 GeoIP 解决方案(例如 nginx/iptables 级别的阻止或外部工具)。
来源和更多信息:
总结:
Discourse GeoBlock 插件不在网络/服务器级别阻止请求,而是在 Discourse 应用程序处理请求后才阻止。如果您需要在应用程序看到请求之前阻止任何访问,则必须使用服务器级别的 GeoIP 方法。
我没有使用 分享对话*,因为我用芬兰语提问,你们可能无法理解* ![]()