안녕하세요, 여러분. 포럼에 93개의 그룹을 생성해야 합니다. 급하게 그룹을 추가하기 시작했는데, 한 그룹을 생성한 후 해당 그룹 링크를 클릭하니 404 오류가 발생했습니다. 이제 이 그룹은 그룹 페이지에는 존재하지만 클릭하면 404 오류가 나요. 삭제도 할 수 없습니다. 다른 그룹을 생성하려고 하면 500 오류가 발생합니다. 공식 문서에 따라 discourse를 설치했으며, Amazon CloudFront와 S3를 사용 중입니다.
meikici 님, 안녕하세요 ![]()
그룹 이름/슬러그는 무엇인가요? Discourse 포럼에서 사용하는 언어는 무엇인가요?
인터페이스를 통해 그룹을 수동으로 생성했나요?
그룹 생성과 관련된 문제 외에 다른 문제가 있나요?
안전 모드(safe mode)를 사용해도 문제가 여전히 발생하나요?
안녕하세요 @Canapin ![]()
제 포럼은 터키어로 되어 있습니다. 그룹 슬러그에 터키어 문자가 포함되어 있지만, URL에서 ASCII 문자 사용이 활성화되어 있어 문제없습니다. 터키어 문자가 포함된 다른 그룹들도 이미 존재합니다. 현재 실제로 겪고 있는 문제는 다음과 같습니다: 그룹 페이지에서 404 오류를 일으키는 두 개의 그룹이 있고, 이들을 삭제하고 싶습니다. 어떻게 삭제할 수 있을까요?
그룹화 이외에는 다른 문제가 없습니다. 실제로 이제 그룹을 생성할 수 있습니다.
동작하지 않는 그룹의 이름과 슬러그는 무엇인가요? 로그에 오류가 있나요?
다음과 같이 rails에서 삭제할 수 있습니다.
cd /var/discourse
./launcher enter app
rails c
g=Group.find(123)
g.destroy
네, 두 그룹 중 하나가 로그에서 오류를 발생시킨 기록이 있습니다.
ActiveRecord::RecordNotUnique (PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "index_groups_on_name" DETAIL: Key (name)=(İstanbul) already exists. ) app/controll
귀하의 문제는 카테고리 이름과 관련된 이 문제와 약간 비슷해 보입니다:
관련이 있는지 전혀 확신이 없지만, 한번 살펴보세요.
인코딩 방식을 변경했는데도 여전히 404 오류가 발생합니다.
레일스 콘솔에서 Group.pluck(:id, :name)을 실행하여 그룹 이름과 ID를 반환하고 이상한 점이 있는지 확인해 주시겠습니까?
또는 데이터 탐색기에서 SELECT id, name FROM groups를 실행해 보실 수도 있습니다.
이 방법을 사용하여 404 오류를 반환하는 두 그룹 중 하나를 삭제할 수 있었지만, 여전히 하나 남아 있습니다. 해당 그룹의 ID를 알 수 없고 찾을 수도 없습니다.
404를 반환하는 그룹의 ID를 어떻게 찾나요?
이것을 시도해 보셨나요?
그렇군요. ![]()
관심이 가는 부분은 중복된 그룹 이름이 어떻게 발생하게 되었는지(그것이 문제라면)를 아는 것입니다.
이름은 고유해야 하며, rails 명령어로 기존 이름으로 변경할 수도 없습니다.
이런 일이 일어난 원인이 될 수 있는 것을 기억하시나요?
혹시 비슷한 이름의 그룹을 여러 개 생성해서 특수 문자가 제거된 후에 동일한 슬러그(slug)로 두 개의 그룹을 생성하려고 시도한 경우인가요? 그렇다면 이는 버그입니다. 재현 방법을 알려주시면 수정될 가능성이 있습니다.
이런 상황을 재현해 보려 했지만, 그룹 이름(아마도 슬러그가 될 것)은 그룹이 생성되기 전에 설정되어야 합니다:

그리고 “숫자, 문자, 대시, 마침표, 밑줄만 포함해야 합니다”
허용되는 유니코드 사용자 이름 문자는 그룹 이름에도, 인터페이스 언어에도 영향을 미치지 않는 것 같습니다.
![]()
다른 포럼에서 테스트해 본 결과, 해당 설정이 정확히 어떤 영향을 미치는지 확실하지 않지만, 유니코드 사용자 이름을 활성화하면 유니코드 문자가 포함된 그룹 이름을 사용할 수 있게 됩니다. 이것이 이 문제의 원인이 될 수 있을까요?
전에 만든 그룹 이름에 유니코드 문자가 있었는데, 슬러그가 자동으로 수정해 주었습니다. 나중에 만든 그룹에서는 그렇게 하지 않는다는 걸 깨달았어요.
아니요, 기억나지 않아요. 그룹을 너무 빨리 추가하느라 정신이 없었어요 ![]()
네, 맞습니다. 제가 그룹을 만들 때 이 부분에 주의를 기울였습니다.