자, 여러분, 제게 포럼이 하나 있는데, 그 포럼에서 저는 유일한 관리자이자 소유자입니다! 그런데 이 사이트를 만들 때 REDACTED라는 이메일을 사용했었는데요, 이 이메일은 TMD 호스팅의 cpanel을 통해 사용했던 것이었습니다. 그런데 제가 TMD 호스팅의 서비스를 더 이상 사용하지 않고 Digital Ocean으로 이사를 간 뒤, 제 관리자 이메일이 이 이메일이었다는 사실조차 잊어버려서 변경하지 않았습니다! 그런데 이제 포럼에서 제 다른 계정에 관리 권한을 넘기려고 하니, 포럼이 REDACTED 계정에 로그인하여 다른 계정으로 관리 권한을 넘기려는 것을 확인해 달라고 합니다. 하지만 더 이상 TMD 호스팅의 cpanel에 접근할 수 없어 REDACTED에 접근할 수 없는데, 어떻게 해야 할까요?
TMD 호스팅에 연락을 취했는데, 제 이메일 REDACTED가 더 이상 존재하지 않는다고 했습니다. 새 서버를 구매해야만 활성화할 수 있다고 하는데, 그러면 제 포럼 관리자는 어떻게 되나요? 이 이메일 REDACTED에 영원히 묶여 있게 되는 건가요? 제 포럼의 모든 비밀번호를 가지고 있는데도 이메일을 변경할 방법이 전혀 없는 건가요?
root@ForumPandex:~# cd /var/discourse
root@ForumPandex:/var/discourse# ./launcher enter app
x86_64 arch detected.
WARNING: containers/app.yml file is world-readable. You can secure this file by running: chmod o-rwx containers/app.yml
root@ForumPandex-app:/var/www/discourse#
root@ForumPandex:~# cd /var/discourse
root@ForumPandex:/var/discourse# ./launcher enter app
x86_64 아키텍처 감지됨.
WARNING: containers/app.yml 파일이 모든 사용자에게 읽기 가능합니다. 다음 명령을 실행하여 이 파일을 보호할 수 있습니다: chmod o-rwx containers/app.yml
root@ForumPandex-app:/var/www/discourse# rails c
[1] pry(main)> u = User.find_by_username "=dex="
=> nil
[2] pry(main)> e.email = "EMAIL"
NameError: undefined local variable or method `e' for main:Object
from (pry):2:in `__pry__'
[3] pry(main)> u.email = "EMAIL"
NoMethodError: undefined method `email=' for nil:NilClass
from (pry):3:in `__pry__'
[4] pry(main)> u.email_tokens.create(email: u.email)
NoMethodError: undefined method `email_tokens' for nil:NilClass
from (pry):4:in `__pry__'
[5] pry(main)> u.save!
NoMethodError: undefined method `save!' for nil:NilClass
from (pry):5:in `__pry__'
[6] pry(main)>
코드 입력란에 있는 주제의 빈칸에 사용자 이름을 입력하지 않으셨기 때문에, 사용자 이름이 들어가야 할 자리에 플레이스홀더 텍스트가 들어가게 되었습니다.
u = User.find_by_username "=dex="
는 다음과 같아야 합니다.
u = User.find_by_username "dex"
dex가 사용자 이름이라면요. nil이 반환되고 사용자 기록이 반환되지 않는다는 사실은 사용자 기록이 존재하지 않음을 나타내는 신호입니다. 이러한 기초적인 내용을 이해하지 못하시는 것 같으므로, 이전에 제안했듯이 새로운 사용자를 생성하는 것을 진심으로 권장합니다. 그러면 더 익숙한 도구들을 사용하여 작업을 진행할 수 있을 것입니다.