你好,
Discourse 是我目前认为技术自由度最高的软件,所以我选择它作为我的论坛。但在配置 OIDC 时遇到了“Discovery document is missing”的错误,花了我一周的时间
,并且在这里没有找到合适的解决方案。
我按照以下教程成功构建了 Discourse:
然后我使用 docker 构建了 Keycloak,Keycloak 和 Discourse 都部署在本地。当通过 OIDC 建立 Discourse 和 keycloak 的连接时,我遇到了以下错误:
OIDC Log: Fetching discovery document raised error Faraday::ConnectionFailed FinalDestination: all resolved IPs were disallowed
1:51 pm
(oidc) Authentication failure! openid_connect_discovery_error: OmniAuth::OpenIDConnect::DiscoveryError, Discovery document is missing
1:51 pm
OmniAuth::OpenIDConnect::DiscoveryError (Discovery document is missing) lib/middleware/omniauth_bypass_middleware.rb:53:in `call' lib/content_security_policy/middleware.rb:12:in `call' lib/middleware/
根据这个错误,我找到了相应的解决方案如下:
按照解决方案操作后,又报了新的错误如下:
(oidc) Authentication failure! openid_connect_discovery_error: OmniAuth::OpenIDConnect::DiscoveryError, Discovery document is missing
2:00 pm
OmniAuth::OpenIDConnect::DiscoveryError (Discovery document is missing) lib/middleware/omniauth_bypass_middleware.rb:53:in `call' lib/content_security_policy/middleware.rb:12:in `call' lib/middleware/
以下是我的部分配置:
Keycloak 的端口是 7070
openid connect discovery document 的内容如下




