web-dev-qa-db-fra.com

Configurer le serveur Ubuntu pour envoyer du courrier ()

J'ai essayé de chercher beaucoup mais je n'ai pas réussi à trouver comment configurer réellement un serveur Ubuntu, afin de pouvoir envoyer des mails via php en utilisant la fonction mail () dans php.

J'ai installé Apache2, mysql et php5 sur mon serveur.

Merci.

40
Shishant

Je conviens également qu'il y a un manque de tutoriels pour les personnes qui ont juste besoin d'un script à envoyer, par exemple e-mails d'erreur, et n'ont pas besoin d'un serveur de messagerie complet.

Tout d'abord, si postfix n'est pas déjà installé, faites:

Sudo apt-get install postfix

Il invite avec quelques questions. Pour le premier, j'ai choisi "site Internet"; pour une machine derrière un pare-feu, je pourrais plutôt choisir smarthost. Pour la deuxième question, il s'agit par défaut du nom de la machine; J'ai ajouté un nom de domaine que je contrôle (afin que je puisse définir DNS plus tard si je le dois).

À ce stade, vous devriez pouvoir utiliser "mail" depuis la ligne de commande pour envoyer un test. (Je suis généralement des instructions sur http://ubuntuforums.org/showthread.php?t=38429 d'abord, sinon je dois utiliser le -f drapeau à /usr/bin/sendmail. J'aime aussi créer /etc/aliases avec des entrées pour root et mon utilisateur normal, puis exécutez newaliases)

Ensuite, sous /etc/php5/conf.d, créez un fichier (par exemple mailconfig.ini) avec ces contenus:

sendmail_from = "[email protected]"
sendmail_path = "/usr/sbin/sendmail -t -i -f [email protected]"

Remplacez [email protected] par votre adresse e-mail. Ils signifient que tous les e-mails auront l'air d'être envoyés par vous, ce qui peut empêcher leur rejet. Cela suffit pour envoyer simplement des e-mails d'erreur à un développeur.

(Les instructions ci-dessus testées sur Ubuntu 10.04, 11.04, 11.10, 12.04)

P.S. Comme souligné par razzed dans les commentaires, mail n'est pas toujours là (par exemple sur Ubuntu 11.10 il manque). Cela n'affecte pas réellement les instructions ci-dessus, vous avez seulement besoin de mail pour le test, et vous pouvez utiliser sendmail tout aussi bien pour cela. Mais mail est également utile pour lire les e-mails, il vaut donc généralement la peine de l'installer, avec: apt-get install mailutils (en tant que root).

45
Darren Cook

Vous devrez configurer le serveur ubuntu pour pouvoir envoyer du courrier ... à titre d'exemple, vous pouvez installer et configurer postfix.

La documentation Ubuntu a une belle page sur https://help.ubuntu.com/community/MailServer

2
Dominik

Soit passer par le processus douloureux de configuration d'un serveur de messagerie directement sur votre serveur (postfix, etc.) ou utiliser une bibliothèque qui vous permettra de vous connecter directement à un serveur smtp.

1
tau-neutrino

Vous devez d'abord installer le paquet xmail, et si cela ne fonctionne toujours pas, jetez un œil ici .