Unable to configure link to '[en.explorer.title]'. Ensure ad-blockers are disabled and try reloading the page.
컨테이너 배포는 정상적으로 이루어졌고, 컴포넌트 추가도 문제없이 잘 됩니다. 그 외 다른 부분들도 정상적으로 작동하는 것 같습니다.
저는 DuckDuckGo Privacy Essential만 사용하고 있으며, 해당 사이트에서는 이를 비활성화해 두었습니다. 그런데 Discourse가 왜 이런 것(광고 차단기)을 신경 써야 하는지, 실제로 신경을 쓴다면 왜 그런지 궁금합니다.
이미 그렇게 해 보았습니다. 방금 새로운 사용자 계정 + 깨끗한 Firefox를 시도해 봤는데 동일한 문제가 발생합니다.
현재 Rails 로그에서 플러그인의 enable 상태가 전환되었습니다:
Started POST "/presence/update" for 10.3.9.144 at 2023-09-21 18:20:19 +0200
Processing by PresenceController#update as */*
Parameters: {"client_id"=>"361de32163a941b09d6b822826359a04", "present_channels"=>["/chat-user/core/2"]}
Completed 200 OK in 9ms (Views: 0.2ms | ActiveRecord: 0.0ms | Allocations: 1697)
Started PUT "/admin/site_settings/data_explorer_enabled" for 10.3.9.144 at 2023-09-21 18:20:20 +0200
Processing by Admin::SiteSettingsController#update as */*
Parameters: {"data_explorer_enabled"=>"true", "id"=>"data_explorer_enabled"}
Rendered text template (Duration: 0.0ms | Allocations: 1)
Completed 200 OK in 51ms (Views: 1.8ms | ActiveRecord: 0.0ms | Allocations: 9266)
Started POST "/presence/update" for 10.3.9.144 at 2023-09-21 18:20:20 +0200
Processing by PresenceController#update as */*
Parameters: {"client_id"=>"361de32163a941b09d6b822826359a04", "present_channels"=>["/chat-user/core/2"]}
Completed 200 OK in 7ms (Views: 0.1ms | ActiveRecord: 0.0ms | Allocations: 1904)
더 테스트해 본 결과, 새 플러그인 페이지를 추가하는 모든 플러그인에서 동일한 동작을 확인했습니다. 예를 들어 Calendar와 Gamification 플러그인에서도 마찬가지입니다. 아마도 새 플러그인 항목을 추가하기 위해 Discourse가 /admins/plugin 페이지를 동적으로 로드하려는 시도가 이 알림을 유발하는 것 같습니다.
참고로, 광고 차단기를 활성화한 상태로 플러그인을 켜고 끄며 테스트하는 경우, 플러그인을 비활성화한 후 알림이 표시되려면 플러그인을 다시 활성화하기 전에 페이지를 완전히 새로고침해야 합니다.
농담조로 "블루스크린"이라고 부른 현상을 이해합니다. 페이지를 새로고침하면 Oops 메시지가 뜨고, support 게시판에 스레드를 만들었지만 별다른 도움이 되지 않아서 여기로 왔습니다.
사이트를 정상적으로 되돌리려면 안전 모드로 진입한 후 플러그인을 비활성화해야 합니다. 확장 프로그램, 애드블록커, 기타 플러그인이 전혀 없는 새롭고 깨끗한 브라우저에서도 이 문제가 재현됩니다.
프로덕션이란 로컬 개발 사이트가 아닌 사이트를 의미합니다. 이렇게 묻는 이유는 로컬 개발 사이트에서는 발생하지 않는 문제가 프로덕션 환경에서 발생하거나, 그 반대인 경우가 있기 때문입니다. 그래서 로컬 개발 사이트에서만 재현된 문제는 보고할 때 주의 깊게 다룹니다. 그렇게 할 때는 반드시 해당 문제를 로컬 개발 사이트에서만 재현했다고 명시합니다.
@simon 사용하시는 명명법이 좀 낯설네요. 저한테는 처음 듣는 용어입니다.
저는 production과 lab/devel을 구분해서 사용해 왔는데, 전자는 실제 고객/사용자를 대상으로 하고 후자는 개발을 위한 테스트/실험 환경(단, 개발에만 국한되지는 않음)입니다. — 제 경험상 위치나 지역은 명명법에 아무런 영향을 주지 않았습니다. 로컬이든, 원격이든, 클라우드든 관계없이 용어에 반영되지 않았습니다.
다시 말씀드리지만, 저는 공식 가이드(개발자용이 아닌 일반 사용자용)에 따라 배포하고 있습니다. 재현이 쉬워야 하는데, 제 환경에서는 매번 재현됩니다.
더 이상 할 말이 없습니다. 무슨 일이 일어나는지에 대해서도 추가할 것이 없습니다.
플러그인 설치가 되었다는 것은 Discourse/컨테이너의 설치/배포가 정상적으로 작동한다는 것을 의미한다고 추측합니다.
매번 재현되며 — Discourse의 나머지 부분도 문제없이 작동하는 것 같습니다.
나머지 부분은 어떨까요? 이 맥락에서 ad-bloker가 무엇을 의미하는지, 그리고 Discourse 전체에서 해당 코드가 무엇을 하는지 모르기 때문에 디버깅이나 우회 방법을 찾을 수 없습니다.
설명했듯이, 제가 사용하는 유일한 광고 차단기를 켜고 껐으며 테스트했습니다. 또한 이 문제(코드)가 웹 브라우저 외부의 요소, 예를 들어 OS/네트워크/조직(나처럼 조직의 일원인 경우)과 무관하다고 가정합니다.