У меня есть CentOS-сервер с apache и SSMTP, связанный с моим SMTP-сервером.
Если я попытаюсь отправить электронное письмо с консоли, он отлично работает. "ssmtp... @gmail.com" или "mail... @gmail.com"
Но, если я создаю php-скрипт для отправки электронной почты, он работает, когда я выполняю его с консоли (PHP скрипт.php), но он не работает, когда я выполняю его с сервера apache (localhost/script.php),
Глядя на журналы apache, я видел, что он не может подключиться к серверу smtp (в журнале больше нет информации).
Apache работает с пользователем "apache", и когда я запускаю ssmtp или подобное из консоли, я использую пользователя root, поэтому я думаю, что система блокирует соединение для пользователя apache...
Некоторые идеи?? Спасибо!
(Я пытался использовать PHPMailer, но он возвращает тот же результат)
Наконец я решил свою проблему. Хитрость была в разрешении SELinux.
Я выполнил эти команды, и теперь это работает как шарм :)
setsebool -P httpd_can_network_connect = 1
setsebool -P httpd_can_sendmail = 1