登録メールが届かなかったため、コマンドラインから管理者アカウントを有効化しました。
管理者アカウントでログインし、anotheruser@anotherdomain.org 宛にテストメールを送信しました(Admin / メール設定 / サーバー設定 → テストメール送信)。
このテストメールは即座に送信され、以下のように確認でき、私の受信トレイにも届きました。
root@my-vps:/var/discourse# ./launcher enter app
x86_64 arch detected.
root@my-vps-app:/var/www/discourse# rails console
Loading production environment (Rails 8.0.5)
discourse(prod)> EmailLog.all.pluck(:to_address, :email_type, :created_at, :smtp_transaction_response)
=>
[["user@domain.org",
"test_message",
2026-05-13 16:23:41.417177000 UTC +00:00,
"250 2.0.0 Ok: queued as 4B4DDB0059A"],
["anotheruser@anotherdomain.org",
"test_message",
2026-05-16 14:44:42.978862000 UTC +00:00,
"250 2.0.0 Ok: queued as D79DFB00573"]]
その後、同じメールアドレス(anotheruser@anotherdomain.org)で登録を試みましたが、登録メールは配信されませんでした(また、Rails コンソールのログにも送信記録が残っていないため、実際には送信されていません)。
結論として、テストメールは送信され配信されますが、登録メールは送信されません。ただし、production.log には以下のような痕跡が残っています。
cat production.log | grep anotheruser
Parameters: {"email_address" => "anotheruser@anotherdomain.org"}
Started GET "/u/check_email?email=anotheruser%40anotherdomain.org" for xxx.xxx.xxx.xxx at 2026-05-16 17:40:45 +0000
Parameters: {"email" => "anotheruser@anotherdomain.org"}
Parameters: {"email" => "anotheruser@anotherdomain.org", "password" => "[FILTERED]", "username" => "NewUser", "password_confirmation" => "[FILTERED]", "challenge" => "xxxxxxxx", "timezone" => "Europe/Paris"}
ユーザーが登録できない状態です。これを解決するにはどうすればよいでしょうか?