Función mail() de PHP no funciona

Forums: 

Buenos días, tengo dificultades con la función mail() del PHP y quisiera que me ayuden a detectar cual puede ser el problema y encontrar una pronta solución.
Tengo mi propio server con Linux WhiteBox 3 este ya viene con el PHP 4.3.2 y Apache 2.0 tengo configurado el sendmail y aparentemente todo correcto pero la función mail() no hace nada, no presenta ningún mensaje de error no genera ningún log de error simplemente no hace nada.
Adicional cuando se trata de levantar el service sendmail se presenta el siguiente error:
Mail submission program must have RunAsUser set to non root user

El resto de correos electrónicos funcionan normalmente envían y reciben información sin inconvenientes solo falla la función mail().

Saludos cordiales
El dartel

Hola dartel. Tengo algunas

Imagen de NEO

Hola dartel.

Tengo algunas preguntas que nos pueden ayudar a entender lo que ocurre:

Si solamente no puedes enviar desde tus correos desde tu script en PHP, puede ser que por alguna razón esté bloqueado tu usuario root para envío de correos.

- Has intentando enviar correos (no desde php) con el usuario root?
- Puedes recibir correos en el usuario root?
- Te da algún mensaje de error?

Saludos
NEO

Si he intentado enviar

Si he intentado enviar mensajes de correo con el root sin usar PHP pero no hace ni el intento por enviarlos
Si he recibido mensajes de correo al MailBox del root
No se presenta ningun mensaje de error en los LOGS aparentemente no intenta hacer nada absolutamente nada

Saludos cordiales
El dartel

Re: Función mail() de PHP no funciona

La funcion mail() de PHP tiene que cumplir ciertos requisitos para poder ser util de acuerdo al manual
http://www.php.net/manual/en/ref.mail.php. En resumen
PHP debe poder localizar el archivo binario de sendmail.
Intentara buscarlo en los directorios que indica la variable de ambiente PATH
o en los directorios que puedes ver listados en la pagina web.
Si tienes otros mta en lugar de sendmail deberias tener un pseudo "sendmail" para
que PHP y otros programas puedan funcionar correctamente.

Como PHP dependen del funcionamiento de sendmail primero debes arreglar el problema de sendmail, lo que
encontre en google

Verifica que usuario es el que intenta ejecutar sendmail, ejecuta
# grep -i RunAs /etc/mail/submit.cf

Creaste el usuario (smmsp) para ejecutar sendmail de acuerdo a la documentacion de sendmail, SECURITY?

Saludos,

De lo que recuerdo la

Imagen de antares

De lo que recuerdo la función mail tiene un parámetro para cambiarle el remitente, si no lo haces muchas veces el correo es catalogado como spam y no llega, pero porque fue filtrado en el destino. Trata de cambiar el remitente.

Saludos.

Saludos,

antares