안녕하세요,
phpBB 포럼(v3.2.10)을 아무 문제 없이 가져왔습니다(@gerhard 외 다른 분들에게도 감사드립니다)…
거의 문제없었지만
: 주제(게시물)에 답글이 없습니다.
혹시 아이디어가 있으신가요?
미리 감사합니다
안녕하세요,
phpBB 포럼(v3.2.10)을 아무 문제 없이 가져왔습니다(@gerhard 외 다른 분들에게도 감사드립니다)…
거의 문제없었지만
: 주제(게시물)에 답글이 없습니다.
혹시 아이디어가 있으신가요?
미리 감사합니다
안녕하세요 @jmbeuken, import_phpbb3.sh를 여러 번 실행한 후 http://yoursite/sidekiq에서 Sidekiq가 작업을 완료했는지 확인해 보세요.
감사합니다: 작동합니다!
지금야 포럼 URL에서만 정규식이 작동한다는 걸 깨달았어요.
변환 후 다음처럼 사전 설정된 항목을 발견했어요
/(viewforum.php\?)(?:.*&)?(f=\d+).*/\1\2 은 완벽하게 작동하지만, /(viewtopic.php\?)(?:.*&)?(t=\d+).*/\1\2 는 주소가 변환되지 않고 그대로 https://www.mysite.com/viewtopic.php?t=123 으로 남아 있어 항상 404 오류를 반환해요.
왜 그런 걸까요? 정규식은 똑같이 보인데, 외부 링크에서 시도해 봤거든요.
UP! (
)
영구 링크 정규식 정규화 문제인 것 같지는 않습니다. 정규식이 올바르게 선택되고 있기 때문이죠. 관리 → 사용자 지정 → 영구 링크에서 viewtopic.php?t=123 형태의 영구 링크를 사용 중이신가요?
안녕하세요, 이 팁에 감사 인사를 드리고자 잠시 들렀습니다. 약 1.3GB 용량의 SQL 덤프를 가진 다소 큰 PHPBB 3.2 포럼을 Discourse로 이식하고 있는데, 처음부터 막혀버린 줄 알았거든요!
new_categories를 빈 리스트로, category_mappings를 빈 객체로 정의하면 실제로 어떤 일이 일어나나요? 부정적인 결과가 있을까요?
해당 설정은 기존 카테고리 구조가 있는 Discourse 포럼으로 가져올 때만 적용됩니다.
안녕하세요,
2,518명의 사용자가 있는 phpBB3 사이트를 가져왔습니다.
"import_phpbb3.sh"를 실행한 후, 모든 것이 안정적으로 보이는 것 같습니다…
하지만 1,108명의 “레벨 0” 사용자와 1,410명의 “레벨 1” 사용자가 있다는 것을 발견했습니다: 사용자를 구분하는 기준은 무엇인가요?
그리고 다음 날, “레벨 0” 사용자가 258명만 남았다는 것을 알게 되었습니다: 이 "정리"는 어떻게 이루어진 것인가요? 게시물이 0개인가요? 활동이 없었나요?
비밀번호 이전을 시도해 보았습니다: 불행히도 많은 오류(사용자명==비밀번호, 길이 < 9, … )가 발생하고 스크립트가 매번 충돌합니다: phpBB3에서 수정(사용자 삭제
)하고 스크립트를 다시 시작합니다: 너무 고통스럽고 중단했습니다. ![]()
오류가 발생할 경우 기본 비밀번호를 설정할 방법이 있을까요? (Ruby를 잘 모르겠습니다
)
미리 감사드립니다.
비밀번호 길이를 확인한 후, 해당 비밀번호를 삭제하거나 9자 이상으로 늘리는 코드를 추가해야 합니다. (최소 길이가 실제로는 8자이므로 9자라는 기준에 대해선 확실하지 않습니다.)
@pfaffman 님 감사합니다.
죄송합니다, 제 설명이 명확하지 않았네요…
phpBB3 인스턴스에서는 비밀번호 최소 길이가 6자였는데, 몇 년 전 phpBB3를 업데이트할 때 8자로 변경했습니다…
따라서 잠재적으로 Discourse의 기본값인 10자보다 짧은 비밀번호가 많이 존재할 수 있습니다.
“spec/components/validators/password_validator_spec.rb” 파일을 해킹(수정)할 수 있다고 생각하지만, 이해하는 데 어려움을 겪고 있습니다… ![]()
감사합니다.
그 방법을 시도해 볼 수는 있지만, 실제로 작동할지 확신할 수 없으며, 업그레이드 시 되돌려지지 않도록 하는 것도 까다롭습니다. 더 쉬운 제안을 드리자면, 너무 짧은 비밀번호는 그냥 가져오지 않는 것입니다. 어차피 그 비밀번호를 기억하지 못할 것 같거든요.
하지만 다른 분이 다른 아이디어를 가지고 계실 수도 있습니다.
안녕하세요,
가져오기(import) 과정에서 파일 업로드에 문제가 발생하고 있습니다:
4497 / 12442 ( 36.1%) [1122 items/min]
Failed to create upload: No such file or directory @ rb_sysopen - /shared/standalone/import/data/files/89_d634760ee03ba0148d7a387a19794f90
Failed to upload /shared/standalone/import/data/files/89_d634760ee03ba0148d7a387a19794f90
하지만 해당 파일은 존재합니다:
root@gui2:/var/discourse/shared/standalone/import# ll data/files/89_d634760ee03ba0148d7a387a19794f90
-rw-rw-rw- 1 nwz003 48 125552 Mar 6 2012 data/files/89_d634760ee03ba0148d7a387a19794f90
그리고
“shared/standalone/import/settings.yml” 파일에는 다음과 같이 설정되어 있습니다:
phpbb_base_dir: /shared/standalone/import/data
해결책이 있을까요?
감사합니다.
설정에서 /shared/import/data를 실행해 보세요. 컨테이너 내부에서는 /var/discourse/shared/standalone 디렉터리가 /shared에 매핑됩니다.
@justin 고마워요: 바로 그 트릭이었네요 ![]()
방금 phpBB 3.0.12 데이터베이스 덤프에서 import_phpbb3.sh를 실행하던 중 이 문제를 겪었습니다:
creating user groups
Failed to add user 1 to group 11
PG::NotNullViolation: ERROR: null value in column "user_id" of relation "group_users" violates not-null constraint
원인을 파악해보니 제 phpbb 데이터베이스의 phpbb_user_group 테이블에 “대기(pending)” 상태의 사용자가 있었습니다. (대기 상태의 사용자는 그룹 가입을 요청했지만 아직 승인되지 않은 사용자입니다.) user_pending 값이 1인 행을 삭제한 후, 가져오기(importer)가 정상적으로 계속 진행되었습니다.
phpBB 3.0.12를 가져오는 또 다른 참고 사항: 첫 실행 시 게시물을 가져오는 과정에서 다음과 같은 메시지가 대량으로 표시됩니다:
65427 / 65812 ( 99.4%) [2238 items/min] Parent post 68380 doesn't exist. Skipping 68382: Shuffling an At Start Stack
("Shuffling an At Start Stack"은 내 포럼에서 해당 스레드의 제목입니다.)
앱을 실행하여 가져온 내용을 확인해 보니, 각 스레드의 첫 번째 게시물만 가져와졌고 답글은 없는 상태였습니다.
아마도 가져오기 도구가 데이터베이스에 대해 두 번째 경로(즉, import_phpbb3.sh를 다시 실행하는 것)를 요구하는 것 같습니다. 두 번째 실행 시에는 모든 누락된 부모 게시물이 존재하는 것으로 보였고, 부모 게시물 누락 메시지도 더 이상 표시되지 않았습니다.
가져오기 도구를 작성하는 것은 문제 발생 후 성공적으로 재개할 수 있는 모든 작업과 마찬가지로 어려운 일인데, 여러분은 이 두 가지를 모두 해냈습니다. 훌륭합니다!
이것은 base.rb나 lookup.rb에 문제가 있을 수 있음을 시사합니다. 제네릭 JSON 가져오기 프로그램에서도 비슷한 문제를 발견했지만, 그 프로그램 자체의 문제라고 생각했습니다. 검색(lookup) 함수가 작동하지 않는 것 같습니다. 제 추측으로는 게시글 생성(create post) 함수가 검색 함수들이 사용하는 구조에 새 게시글을 추가하지 않는 것 같습니다.
앞으로 하루 이틀 안에 살펴볼 예정입니다.
@pfaffman 제가 진행한 임포트는 시험용이었습니다. 며칠 후에 테스트해볼 수 있는 것이 있으시면 기꺼이 테스트해 드리겠습니다. 적어도 한 번 더 진행할 가능성이 높기 때문입니다.
음, @topics와/또는 @posts가 주제/게시글 생성자에 의해 업데이트되지 않는 것 같습니다. 제 스크립트에서는 조회 함수에 의존하기보다 코드에서 TopicCustomField를 직접 검색해 왔습니다.
코드와 최근 커밋을 확인해 보았지만, 명확한 설명을 찾지 못했습니다.