Traté de enviar un correo electrónico utilizando la mail()
función php pero falló de alguna manera, quejándose de que se requiere un nombre de dominio real. Lo siguiente se observa en el registro de correo:
sendmail 4984 r25984: from = apache, size = 273, class = 0, nrcpts = 1, msgid = <201.r25@localhost.localdomain>, relay = apache @ localhost
sendmail 4985 r25985: ruleset = check_mail, arg1 =, relay = midominio.com [127.0.0.1], rechazar = 553 5.5.4 ... Se requiere un nombre de dominio real para la dirección del remitente
sendmail 4984 r25984: to=external@server.com, ctladdr = apache (48/48), delay = 00: 00:01, xdelay = 00: 00: 00, mailer = relay, pri = 30273, relay = [127.0.0.1] [127.0.0.1], dsn = 5.6.0, stat = Error de formato de datos
sendmail 4984 r25984: r25984: DSN: error de formato de datos
cron puede enviar correos electrónicos a external@server.com siempre que haya un problema con logrotate. No estoy seguro de por qué PHP no puede hacerlo. Intenté hacer cambios a la configuración predeterminada en `sendmail.mc con lo siguiente:
MASQUERADE_AS(`mydomain.com')dnl
FEATURE(masquerade_envelope)dnl
FEATURE(masquerade_entire_domain)dnl
MASQUERADE_DOMAIN(localhost)dnl
MASQUERADE_DOMAIN(localhost.localdomain)dnl
MASQUERADE_DOMAIN(mycom)dnl
Pero, no parece tener ningún efecto. El encabezado de la dirección en la función de correo php ya se ha configurado. También me aseguré de que SELinux httpd_can_sendmail
esté habilitado. ¿Qué más debo hacer para recibir el correo?
dnl
frente a ellas.
mail()
? Y, sendmail.mc
no es el archivo de configuración adecuado, este archivo debe compilarse para sendmail.cf
usar m4
.
sendmail.mc
, cambió las líneaslocalhost.localdomain
ylocalhost
algo significativo y compiló el archivo mcsendmail.cf
?