ToddZ
1
根据为反向IP查找配置MaxMind的说明,我认为我的设置是正确的,但在下载MaxMind数据库时遇到了401错误。
我使用的是标准安装、自托管且版本最新的Discourse。
我在MaxMind创建了一个账户,并添加了一个新的许可证密钥。
我编辑了app.yml中的ENV部分如下:
## MaxMind地理定位IP地址密钥,用于IP地址查找
## 详情请参见 https://meta.discourse.org/t/-/137387/23
DISCOURSE_MAXMIND_ACCOUNT_ID: [我的账户ID]
DISCOURSE_MAXMIND_LICENSE_KEY: [我的许可证密钥]
然后运行了 ./launcher rebuild app
在重建过程中,记录了以下“401未授权”错误:
MaxMind数据库GeoLite2-City下载失败。: OpenURI::HTTPError : 401错误
MaxMind数据库GeoLite2-ASN下载失败。: OpenURI::HTTPError : 401错误
(当然,没有数据库文件被下载到我的 /var/www/discourse/vendor/data 目录中)
根据这个建议,我使用了MaxMind开发者门户中找到的命令——使用完全相同的凭据——直接下载数据库:
curl -O -J -L -u [我的账户ID]:[我的许可证密钥] \
'https://download.maxmind.com/geoip/databases/GeoLite2-City/download?suffix=tar.gz'
该命令运行正常。
那么,我可能遗漏了什么,导致从Discourse连接时出现401错误?
1 个赞
ToddZ
3
感谢您的跟进!没有,我还没有解决。在后续的更新+重建后,我得到了相同的结果。不确定该研究什么…… 
嘿,抱歉这个话题被搁置了。我自己在这方面经验不多。您在审核队列中遇到 IP 查找问题了吗?也许这只是一个您不必担心的警告?
ToddZ
5
我的审核队列不多,但如果没有 MaxMind 数据库,如果我需要研究某个问题,我就无法为用户进行位置查找,而且……
好奇其他人是否遇到过连接 MaxMind 以下载数据库的问题,或者只是我自己的问题。这似乎是直到你需要它时才会被注意到的事情。
pfaffman
(Jay Pfaffman)
7
它在我刚刚重建的网站上似乎可以正常工作。
我唯一的猜测是你的设置放错了位置(根据你提供的信息,这似乎不太可能)。
这是否像下面这样显示了你的 Maxmind 凭证?
root@figgy:/var/discourse# ./launcher enter app
root@figgy-spm:/# set|grep MAXM
DISCOURSE_MAXMIND_ACCOUNT_ID=12345
DISCOURSE_MAXMIND_LICENSE_KEY=mycoolkey
root@figgy-spm:/# grep maxm /var/www/discourse/config/discourse.conf
maxmind_license_key = 'mcoolkey'
maxmind_account_id = '12345'
所以你应该
./launcher enter app
set|grep MAXM
grep maxm /var/www/discourse/config/discourse.conf
你也可以检查 Rails 是否拥有它们(仍在容器内):
rails c
然后
GlobalSetting.maxmind_account_id
GlobalSetting.maxmind_license_key
希望你的信息没有放在 app.yml 的 env: 部分(尽管你粘贴的评论表明它们在正确的位置),那样很容易修复。
2 个赞