With ejabberd 18.12 I have two virtual hosts:

  • domain1.tld
  • domain2.tld

When I do the command

ejabberdctl register foo domain1.tld password

The user is also registered for domain2.tld.

Is there anyway to register a user for just one domain?

For example, foo@domain1.tld and foo@domain2.tld should not be the same account

1 Answer 1


Important note about virtual hosting: if you define several domains in ejabberd.yml (see section Host Names), you probably want that each virtual host uses a different configuration of database

and also read https://docs.ejabberd.im/admin/configuration/#relational-databases

You are using the same database for different vhosts.

  • That was it. Ejabberd now has a new mysql schema allowing for a single database to provide for multiple virtual hosts independently with the new schema. This is what I ended up doing and it is working. The 'new' schema allows to handle several XMPP domains in a single ejabberd database
    – Miati
    Dec 16, 2018 at 0:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.