allow pm to staff 플러그인 사용 시 개별 그룹 로딩 오류

그룹 페이지(domain.com/g)에 접속하면 모든 그룹이 불러와지지만, 특정 그룹에 진입하려고 하면 아래 오류가 발생합니다. 이 오류는 모든 그룹에서 발생하고 있습니다.

저는 이 그룹들의 소유자이며, 일반 사용자 계정으로 확인해 보았지만 해당 사용자 유형에서도 동일한 오류가 발생합니다.

이 문제를 수정하는 데 도움을 주십시오.

그룹에 액세스할 때 \logs 또는 브라우저 콘솔을 확인해 보시고, 거기서 오류에 대한 더 자세한 정보를 찾을 수 있는지 확인해 주시겠습니까?

도와주셔서 감사합니다.


브라우저 콘솔에서 발생하는 오류입니다.

해당 오류들을 확장해서 메시지를 여기에 코드 블록으로 복사해 주시겠어요?

/groups/EPiC.json:1          리소스를 로드하지 못함: 서버가 상태 코드 500()으로 응답했습니다.
application.js:83 Objectabort: ƒ (e)always: ƒ ()catch: ƒ (e)done: ƒ ()fail: ƒ ()length: 0name: "add"prototype: {constructor: ƒ}arguments: (...)caller: (...)[[FunctionLocation]]: jquery.js:3535[[Prototype]]: ƒ ()[[Scopes]]: Scopes[4]getAllResponseHeaders: ƒ ()getResponseHeader: ƒ (e)jqTextStatus: "error"overrideMimeType: ƒ (e)pipe: ƒ ()progress: ƒ ()promise: ƒ (e)readyState: 4requestedUrl: "/groups/EPiC.json"responseJSON: error: "Internal Server Error"status: 500[[Prototype]]: ObjectresponseText: "{\"status\":500,\"error\":\"Internal Server Error\"}"setRequestHeader: ƒ (e,t)state: ƒ ()status: 500statusCode: ƒ (e)statusText: "error"then: ƒ (t,n,i)[[Prototype]]: Object
error @ application.js:83
router.js:1064 루트 처리 중 오류: group.members
(anonymous) @ router.js:1064
rsvp.js:23 Uncaught ObjecterrorThrown: ""jqXHR: abort: ƒ (e)always: ƒ ()catch: ƒ (e)done: ƒ ()fail: ƒ ()getAllResponseHeaders: ƒ ()getResponseHeader: ƒ (e)jqTextStatus: "error"overrideMimeType: ƒ (e)pipe: ƒ ()progress: ƒ ()promise: ƒ (e)readyState: 4requestedUrl: "/groups/EPiC.json"responseJSON: error: "Internal Server Error"status: 500[[Prototype]]: Objectconstructor: ƒ Object()hasOwnProperty: ƒ hasOwnProperty()isPrototypeOf: ƒ isPrototypeOf()propertyIsEnumerable: ƒ propertyIsEnumerable()toLocaleString: ƒ toLocaleString()toString: ƒ toString()valueOf: ƒ valueOf()__defineGetter__: ƒ __defineGetter__()__defineSetter__: ƒ __defineSetter__()__lookupGetter__: ƒ __lookupGetter__()__lookupSetter__: ƒ __lookupSetter__()__proto__: (...)get __proto__: ƒ __proto__()set __proto__: ƒ __proto__()responseText: "{\"status\":500,\"error\":\"Internal Server Error\"}"setRequestHeader: ƒ (e,t)state: ƒ ()status: 500statusCode: ƒ (e)length: 1name: "statusCode"prototype: {constructor: ƒ}arguments: (...)caller: (...)[[FunctionLocation]]: jquery.js:9487[[Prototype]]: ƒ ()[[Scopes]]: Scopes[4]statusText: "error"then: ƒ (t,n,i)[[Prototype]]: ObjecttextStatus: "error"[[Prototype]]: Object
DevTools가 소스 맵을 로드하지 못함: chrome-extension://gighmmpiobklfepjocnamgkkbiglidom/browser-polyfill.js.map에 대한 콘텐츠를 로드할 수 없음: 시스템 오류: net::ERR_FILE_NOT_FOUND
/message-bus/eb47113e4410479497a7f26dedf3819c/poll:1          리소스를 로드하지 못함: net::ERR_QUIC_PROTOCOL_ERROR

안전 모드에서 동일한 오류가 발생합니까?

안전 모드도 시도해 보았지만 여전히 같은 오류가 발생합니다.

이 문제가 우리에게 매우 긴급한 상황이라 가능한 한 빨리 해결해 주셨으면 합니다. 현재 아무도 그룹에 가입할 수 없는 상태입니다.

참고: 모든 플러그인을 업그레이드했으며, 현재 Discourse는 최신 버전을 사용하고 있습니다.

테스트 사이트에서 이 문제를 재현하는 데 어려움을 겪고 있습니다. 사이트에 비공식 플러그인이 설치되어 있어 영향을 미치고 있을 가능성이 있나요? 아니면 문제를 재현해 볼 수 있도록 참고할 수 있는 다른 특이점이나 차이점이 있을까요?

저는 이 플러그인만 사용하고 있습니다. 안전 모드에서도 시도해 보았지만, 안전 모드에서는 모든 플러그인이 비활성화되므로 여전히 같은 오류가 발생합니다.
오류를 재현하기 위해 제가 추가로 제공해야 할 사항이 있다면 알려 주십시오.

안타깝게도 safe mode는 프론트엔드 코드만 비활성화하고 서버 측 코드는 비활성화하지 않습니다(대부분의 문제를 잡아주지만 모든 것을 잡지는 못합니다). 따라서 여전히 플러그인 때문일 수 있습니다. 목록에 있는 비공식 플러그인 중 유일한 것이 allow-pms-to-staff이므로, 이 플러그인이 문제의 원인이 될 가능성이 가장 높습니다. app.yml에서 이 플러그인을 제거한 후 다시 빌드해 보시면 실제로 해당 플러그인이 문제를 일으키는지 확인해 볼 수 있습니다.

최근 다른 문제와 관련하여 수정이 필요하다는 보고가 있었지만, 이 문제와는 무관할 수도 있습니다:

음, 이거 한번 해볼게.

플러그인을 제거한 후 문제가 해결되었는지 알려주세요. 플러그인이 그런 문제를 일으킨다는 것은 이해가 가지 않지만, 그 외에는 다른 원인을 찾지 못하겠습니다.

네, 말씀하신 대로 이 플러그인이 문제를 일으키고 있었습니다. 플러그인을 제거한 후 이제 정상적으로 작동하기 시작했습니다.
@pfaffman 이 플러그인이 우리에게 매우 중요하니, 꼭 수정해 주시기를 부탁드립니다.

잠깐, 이건 비공식 플러그인 GitHub - pfaffman/discourse-allow-pm-to-staff: Allow private messages to be sent to staff for users who could otherwise not send private messages. · GitHub 의 버그인가요?

Support 로 옮기겠습니다.

@pfaffman 이 플러그인에 대한 주제를 찾지 못하겠습니다?

맞아요. 아무도 사용하지 않을 거라고 생각해서 가볍게 언급한 거예요. :person_shrugging:

저는 이 기능이 Discourse 코어에 포함되어야 한다고 진심으로 생각합니다. 특히 신뢰 수준이나 PM 전송 제한과 관계없이 모든 활성 사용자가 스태프에게 새 PM을 보낼 수 있는 기능 말입니다. 레벨 0의 신규 사용자들로부터 저에게 연락을 시도했으나 그러지 못했다는 많은(공개된) 보고를 받았습니다. 그리고 레벨 0 사용자에게 일반 사용자 간 PM 기능을 활성화하는 것은 나쁜 아이디어입니다.

네, 플러그인의 최신 변경 사항으로 인해 이제 문제가 수정되었습니다.