Основная причина почему не уходят письма через функцию php mail() это
не правильный ящик отправителя.
При отправке через функцию в качестве отправителя используется ящик web-мастера домена (применительно к ISPManager),
очень часто при создании домена администратора не задумываясь ставит webmaster@domain.com, при этом такой ящик не существует и при отправке письма почтовый сервер ругается на его отсутствие.
Первое, что нужно сделать если письма не уходят — проверить чтобы ящик вебмастера\администратора web-домена в панели был реальным ящиком и существовал на Вашем сервере.
Если проблема не исчезла или указан настоящий почтовый ящик, необходимо обратиться к log файлу почтового сервера:
/var/log/maillog