При использовании mail () PHP ожидает найти почтовый сервер, работающий на localhost. Вы, вероятно, не имеете этого. Вместо этого вы можете попробовать PHPMailer .
Конфигурация будет выглядеть примерно так:
<?php
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Host = 'smtp.example.com';
$mail->Username = 'user';
$mail->Password = 'pass';
$mail->From = 'john.doe@example.com';
$mail->FromName = "John Doe";
$mail->AddAddress('test@gmail.com');
$mail->Subject = 'test subject';
$mail->Body = 'Works?';
$mail->Send()
?>