PHP, Mail & Apache en Local

Là, il faudrait être plus explicite sur ce que tu veux faire :

- utiliser ton ordinateur comme passerelle (SMTP) de messagerie ?
- utiliser ton ordinateur comme serveur de messagerie (POP3 ou IMAP4) ?
- les deux ?
 
MErci bompi pour ta reponse.

non, je ne veux pas utiliser mon ordi comme serveur de messagerie. juste pour tester les envois de mails avt de passer en production...
j'utilise la classe phpmailer, voici un bout de mon code source:
Bloc de code:
require("phpmailer-lite/class.phpmailer-lite.php");

$mail = new PHPMailerLite();

$mail->Priority = 1;
$mail->IsHTML(true);
$mail->AddReplyTo("[email protected]", "Do not reply");
$mail->SetFrom("[email protected]", "Moroccan Arts");

$mail->AddAddress("[email protected]");

// email subject
$mail->Subject  = "First email of Moroccan Arts";

// HTML body
$body  = "Hello,";
$body .= "<i>Your</i> email <b>goes</b> here."; 

$mail->Body = $body;

if(!$mail->Send()) echo "There has been a mail error sending";
else echo "OK";

// Clear all addresses and attachments for the next mail
$mail->ClearAddresses();
$mail->ClearAttachments();
mail("[email protected]", "Mysql error in Moroccan Arts: ", "Blabla");
j'utilise aussi la fonction native de PHP mail() pour m'assurer que ca ne vient pas de phpmailer

Merci infiniment
 
Quelle est la configuration d'envoi de messages ?
Plus précisément, quelle passerelle de messagerie utilises-tu ?
Est-ce celle de ton FAI, ou une autre ?
Et dans le deuxième cas, comment t'y connectes-tu et est-il possible de l'utiliser depuis ton réseau ?
 
wow, la tu me poses trop de question et je ne saurai trop te repondre :D

j'ai simplement suivi les tutos dont celui que j'ai mentionné.
lorsque je visualise les logs mail: tail -f /var/log/mail.log j'ai l'erreur suivante: Sep 11 17:07:20 new-host-2 postfix/master[19246]: fatal: /etc/postfix/master.cf: line 129: bad transport type: =

ca te dit qlq chose?
 
Si tu veux envoyer un message, il faut que ton programme s'adresse à une passerelle de messagerie.
Une passerelle de messagerie est un service spécialisé dans le relai des messages pour leur acheminement. En général, on lui parle sur le port 25.

Reste à connaître ladite passerelle à utiliser puis la renseigner dans la configuration de ton site.

Si tu veux utiliser ta propre machine, l'adresse est donc "127.0.0.1" ou "localhost". Le port 25. Mais il te faut activer le service SMTP lui-même (il ne l'est pas par défaut).

Mais... en général on préfère utiliser la passerelle de messagerie de son FAI ou de son hébérgeur (pour un serveur) ; en effet, les différents relais intermédiaires peuvent exiger que la passerelle précédente soit connue comme relai de domaine et c'est assez rare pour sa propre machine.
 
Ok, merci pour l'explication, je comprends mieux maintenant :)

Mais... en général on préfère utiliser la passerelle de messagerie de son FAI ou de son hébérgeur (pour un serveur) ; en effet, les différents relais intermédiaires peuvent exiger que la passerelle précédente soit connue comme relai de domaine et c'est assez rare pour sa propre machine.
mon FAI chez moi est free, mais ca m'arrive de travailler dans des endroits differents avec des FAI differents.
le site est hebergé en mutualisé chez OVH
que faudrait il que je fasse pour que uniquement les envois de mails s'effectuent depuis ma machine en local??
 
Il faut activer et paramétrer le service sur ta machine. Sur Snow Leopard, je ne me souviens pas de la méthode. J'ai trouvé ceci.
 
j'ai suivi le tuto etape par etape mais rien a faire!!
la commande "launchctl stop org.postfix.master" me retourne l'erreur: launchctl stop error: no such a process!!
je pense que je vais laisser tomber cette histoire, je sens que je perd du temps la dessus!! :((
 
Il n'est peut-être pas démarré. Pour le démarrer :
Bloc de code:
sudo launchctl load -w /System/Library/LaunchDaemons/org.postfix.master.plist

L'option '-w' permet qu'il démarre à chaque redémarrage du sysème.
 
C'est vrai. D'un autre côté, si c'est pour installer la version de production sur un autre système (OVH ne fait pas dans le Mac, je pense), autant installer des versions à soi.
 
Il n'est peut-être pas démarré. Pour le démarrer :
en tapant sudo launchctl load -w /System/Library/LaunchDaemons/org.postfix.master.plist
terminal me dit: org.postfix.master: Already loaded

Juste une petite remarque : Apache et PHP sont présents d'office sur Mac OSX.
Pas la peine des les installer.
je sais, c'etait juste pour preciser que j'utilise apache et php deja fournis par snow leopard...
 
Bizarre.
Chez moi, postfix est chargé et la commande launchctl réagit comme prévu. Tu utilises bien sudo à chaque fois que tu lances launchctl ?
 
j'ai bien tapé sudo launchctl load -w /System/Library/LaunchDaemons/org.postfix.master.plist comme tu me l'as indiqué!!
c'est pas grave, je laisse tomber... j'en peux plus :(
MErci en tout cas pour votre temps et aide
 
Bien volontiers. :zen:

Si le service est déjà lancé, c'est bien. Je faisais allusion à la commande "stop" : elle aussi il faut l'exécuter avec sudo.

Bref. As-tu :
- configuré le fichier /private/etc/postfix/master.cf ?
- trouvé dans ton site où renseigner la passerelle de messagerie ?
 
configuré le fichier /private/etc/postfix/master.cf
Oui, mais peut etre que la config n'est pas bonne: voici mon fichier master.cf
Bloc de code:
#
# Postfix master process configuration file.  For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
# ==== Begin auto-generated section ========================================
# This section of the master.cf file is auto-generated by the Server Admin
#  Mail backend plugin whenever mails settings are modified.
smtp      inet  n       -       n       -       -       smtpd
#submission inet n       -       n       -       -       smtpd
#  -o smtpd_tls_security_level=encrypt
smtp      unix  -       -       n       -       -       smtp
# === End auto-generated section ===========================================
# Modern SMTP clients communicate securely over port 25 using the STARTTLS command.
# Some older clients, such as Outlook 2000 and its predecessors, do not properly
# support this command and instead assume a preconfigured secure connection
# on port 465. This was sometimes called "smtps", but such usage was never
# approved by the IANA and therefore conflicts with another, legitimate assignment.
# For more details about managing secure SMTP connections with postfix, please see:
#   http://www.postfix.org/TLS_README.html
# To read more about configuring secure connections with Outlook 2000, please read:
#   http://support.microsoft.com/default.aspx?scid=kb;en-us;Q307772
# Apple does not support the use of port 465 for this purpose.
# After determining that connecting clients do require this behavior, you may choose
# to manually enable support for these older clients by uncommenting the following
# four lines.
#465      inet  n       -       n       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#628      inet  n       -       n       -       -       qmqpd
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay     unix  -       -       n       -       -       smtp
	-o fallback_relay=
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache	  unix	-	-	n	-	1	scache
#
# ====================================================================
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
#
# Many of the following services use the Postfix pipe(8) delivery
# agent.  See the pipe(8) man page for information about ${recipient}
# and other message envelope options.
# ====================================================================
#
# maildrop. See the Postfix MAILDROP_README file for details.
# Also specify in main.cf: maildrop_destination_recipient_limit=1
#
#maildrop  unix  -       n       n       -       -       pipe
#  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
#
# ====================================================================
#
# The Cyrus deliver program has changed incompatibly, multiple times.
#
#old-cyrus unix  -       n       n       -       -       pipe
#  flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user}
#
# ====================================================================
#
# Cyrus 2.1.5 (Amos Gouaux)
# Also specify in main.cf: cyrus_destination_recipient_limit=1
#
#cyrus     unix  -       n       n       -       -       pipe
#  user=_cyrus argv=/usr/bin/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
#
# Dovecot version 1.1.3
#
dovecot   unix  -       n       n       -       25      pipe
  flags=DRhu user=_dovecot:mail argv=/usr/libexec/dovecot/deliver -d ${user}
#
# Greylist policy server
#
policy    unix  -       n       n       -       -       spawn
  user=nobody:mail argv=/usr/bin/perl /usr/libexec/postfix/greylist.pl
#
# Use these settings to enable +addressing ([email protected])
# flags=DRhu user=_dovecot:mail argv=/usr/libexec/dovecot/deliver -d ${user} -a ${recipient} -m ${extension}
#
# ====================================================================
#
# See the Postfix UUCP_README file for configuration details.
#
#uucp      unix  -       n       n       -       -       pipe
#  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
#
# ====================================================================
#
# Other external delivery methods.
#
#ifmail    unix  -       n       n       -       -       pipe
#  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
#
#bsmtp     unix  -       n       n       -       -       pipe
#  flags=Fq. user=bsmtp argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
#
#scalemail-backend unix -       n       n       -       2       pipe
#  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store
#  ${nexthop} ${user} ${extension}
#
#mailman   unix  -       n       n       -       -       pipe
#  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
#  ${nexthop} ${user}

mydomain = moroccan-arts.co.uk
myorigin = moroccan-arts.co.uk
relayhost = mail.moroccan-arts.co.uk

trouvé dans ton site où renseigner la passerelle de messagerie ?
non ! :confused:
ce n'est precisé nulpart dans les tutos...
 
Bon. Si on revient au début du fil, tu signales des messages d'erreur sur ce fichier.
Je pense que les lignes que tu as ajoutées auraient dû l'être dans /private/etc/postfix/main.cf, pas dans /private/etc/postfix/master.cf.
 
j'ai viré les 3 lignes du fichier, y a autre chose a faire dans master.cf?

je t'informe que j'ai rajouté MAILSERVER=-YES- al'aide de sudo nano -w /etc/hostconfig

une petite precision: j'ai mis
myhostname= localhost
mydomain = moroccan-arts.co.uk
 
Je te suggère éventuellement de décharger/recharger le service.
Puis de retester.