그걸 발견해 주셔서 감사합니다. WP Discourse 플러그인의 옵션 페이지에서 enable_sso 설정에 대한 참조를 확인하셨다면, 해당 참조들은 플러그인의 최신 릴리스(버전 2.3.0)에서 새로운 enable_discourse_connect 설정 이름으로 변경되었어야 합니다.
만약 Meta의 플러그인 문서에 여전히 구식 설정 이름에 대한 참조가 남아 있다면, 이를 새로운 설정 이름으로 업데이트해야 합니다. 다음 주 초에 이를 다시 확인하겠습니다.
참고로 DiscourseConnect를 설정하는 동안 관리자는 Discourse 사이트의 /u/admin-login 페이지로 이동하여 SSO 로그인을 우회할 수 있습니다. 해당 페이지의 양식에 이메일 주소를 입력하면, 일회용 로그인 링크가 이메일로 전송됩니다.
Started GET "/session/email-login/5356b2413338852f25d4382e34fb53a6" for {my.ip.address} at 2021-08-07 02:33:43 +0000
Processing by SessionController#email_login_info as HTML
Parameters: {"token"=>"5356b2413338852f25d4382e34fb53a6"}
Rendered default/empty.html.erb within layouts/application (Duration: 0.1ms | Allocations: 11)
Rendered layout layouts/application.html.erb (Duration: 41.1ms | Allocations: 8102)
Completed 200 OK in 66ms (Views: 43.4ms | ActiveRecord: 0.0ms | Allocations: 12210)
Started GET "/session/email-login/5356b2413338852f25d4382e34fb53a6.json" for {my.ip.address} at 2021-08-07 02:33:48 +0000
Processing by SessionController#email_login_info as JSON
Parameters: {"token"=>"5356b2413338852f25d4382e34fb53a6"}
Completed 200 OK in 25ms (Views: 0.3ms | ActiveRecord: 0.0ms | Allocations: 4548)
자, 이제 Discourse 설치 페이지의 로그인 링크를 클릭해 보겠습니다
Started GET "/session/csrf" for {my.ip.address} at 2021-08-07 02:33:56 +0000
Processing by SessionController#csrf as JSON
Completed 200 OK in 2ms (Views: 0.3ms | Allocations: 308)
Started POST "/session/email-login/5356b2413338852f25d4382e34fb53a6" for {my.ip.address} at 2021-08-07 02:33:57 +0000
Processing by SessionController#email_login as */*
Parameters: {"second_factor_method"=>"1", "timezone"=>"America/Denver", "token"=>"5356b2413338852f25d4382e34fb53a6"}
Completed 200 OK in 231ms (Views: 0.3ms | ActiveRecord: 0.0ms | Allocations: 24272)
여기서 문제가 발생합니다
Started GET "/" for {my.ip.address} at 2021-08-07 02:33:58 +0000
Processing by ListController#latest as HTML
Redirected to http://my.discourse.install/login
Filter chain halted as :redirect_to_login_if_required rendered or redirected
Completed 302 Found in 2ms (ActiveRecord: 0.0ms | Allocations: 613)
이제 로그인 화면이 정상적으로 렌더링됩니다
Started GET "/login" for {my.ip.address} at 2021-08-07 02:33:59 +0000
Processing by StaticController#show as HTML
Parameters: {"id"=>"login"}
Rendered static/login.html.erb within layouts/application (Duration: 38.2ms | Allocations: 1520)
Rendered layout layouts/application.html.erb (Duration: 103.4ms | Allocations: 12203)
Completed 200 OK in 130ms (Views: 105.7ms | ActiveRecord: 0.0ms | Allocations: 16261)
Started GET "/login.html" for {my.ip.address} at 2021-08-07 02:34:04 +0000
Processing by StaticController#show as HTML
Parameters: {"id"=>"login"}
Rendered static/login.html.erb (Duration: 22.0ms | Allocations: 1352)
Completed 200 OK in 25ms (Views: 23.0ms | Allocations: 1970)
그리고, $rails c CLI에서 모든 관리자 설정/값 쌍을 덤프할 수 있는 명령어가 있는지 아시는 분 계신가요? 그냥 DiscourseConnect 관련 설정을 전부 초기화하고 처음부터 다시 시작할 수도 있을 것 같습니다. 아니면, 모든 관리자 설정을 초기 상태로 되돌리는 CLI 명령어가 있을 수도 있겠죠?
—추가 수정—
아, 방금 SiteSetting.all을 찾았네요. 이건 정말 방대한 양의 정보를 덤프하네요. 필터 기능이 있을까요?
회원가입 확인 이메일은 받았고, 잘 작동했으며, 새 사용자로 로그인하려고 했을 때 다음 메시지가 떴습니다:
이 포럼에 접근하려면 관리자가 새 계정을 수동으로 승인해야 합니다. 계정이 승인되면 이메일을 보내드리겠습니다!
ㅋㅋ…
—추가 편집—
discourse의 복잡성은 정말 마음에 듭니다. 정말 놀라운 소프트웨어입니다. 이 정도에 근접하는 포럼은 XF 정도입니다. 몇 년 전 [unknown]이 SimpleMachines의 메인 개발자였을 때, 그건 정말 멋진 것이었지만, 그 시대는 이미 오래 전에 끝났습니다. 모든 개발자분들께 감사드립니다. 여러분이 만든 이 훌륭한, 우아한 기계에요.