PHP mail() ya no funciona después de la actualización a OSX Mountain Lion

Acabo de actualizar OS X a Mountain Lion ayer, pero la función php mail() ya no funciona.

Antes de actualizar, el PHP mail() la función funcionó bien, el correo de Apple funciona bien. Después de actualizar, el correo de Apple funciona bien, pero PHP mail() la función NO funciona.

Servidor web: XAMPP 1.7.3

Yo uso este código para probar el mail() función:

if (mail($to, $object, $content, "From: ". $from)) 
{ 
    echo 'send '; 
} 
else 
{ 
    echo "not send"; 
}

Muestra: not send

¿Algo que tenga que cambiar? tales como el php.ini ¿o algo mas?

Gracias de antemano.

preguntado el 27 de julio de 12 a las 23:07

Revise sendmail_path in php.ini y asegúrate de tener sendmail instalado en su sistema y que la ruta coincida con PHP. Luego verifique su syslog o directorio de registros para ver si hay errores del servidor de correo. -

2 Respuestas

Finalmente encontré la solución. Después de mirar el error_log (/Aplicaciones/XAMPP/xamppfiles/logs/error_log), hay un error: sendmail: fatal: chdir /Library/Server/Mail/Data/spool: No existe tal archivo o directorio

Haga lo siguiente en su terminal:

sudo mkdir -p /Library/Server/Mail/Data/spool
sudo /usr/sbin/postfix set-permissions
sudo /usr/sbin/postfix start

¡Entonces el php mail() funciona!

Referencia: https://apple.stackexchange.com/questions/54051/sendmail-error-on-os-x-mountain-lion

Respondido 13 Abr '17, 13:04

Recibí algunos errores en los comandos de la terminal con respecto a postfix, ¡pero su solución funcionó! - ariestav

Fix funcionó para mí, aunque también recibí algunas advertencias extrañas en la terminal. ¡Al final funcionó! - jeremy ricketts

aquí hay instrucciones sobre cómo cargar sendmail al inicio: remonpel.nl/2013/03/enviando-correo-desde-php-con-montaña-león - herkins

Esta respuesta alternativa from that thread también funciona (señale la configuración donde realmente reside postfix). Él /Library/Server/Mail/Data/spool carpeta es cómo OS X Server maneja las cosas. El postfijo por defecto es /var/spool/postfix y ya existía en mi máquina. - vagari

Después de crear la carpeta de cola como se describe arriba, configuré postfix siguiendo las instrucciones de este artículo Sugerencias para OS X

También tuve que editar mi ruta de envío de php.ini para tener algunos interruptores adicionales, específicamente

sendmail_path=/usr/sbin/sendmail -t -i

Respondido 13 ago 12, 04:08

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.