sendmail sh: / usr / sbin / sendmail: В доступе отказано - PullRequest
2 голосов
/ 30 января 2012

Я не могу отправить почту из php-скрипта, хотя могу отправить ее из командной строки с помощью sendmail и

php sendMyMail.php

Я уже пробовал эти

  1. httpd работает как пользователь apache, и я добавил пользователя apache в группу smmsp

  2. httpd_can_sendmail -> on

  3. SELinux status:                 enabled
    SELinuxfs mount:                /selinux
    Current mode:                   permissive
    Mode from config file:          enforcing
    Policy version:                 24
    Policy from config file:        targeted
    

Но в httpdlog_log_log все еще отображается эта ошибка

sh: / usr / sbin / sendmail: в доступе отказано

Может у кого-нибудь есть идеи? Я действительно ценю все ваши предложения и действительно исчерпан этим.

Ответы [ 2 ]

0 голосов
/ 16 января 2019

В дополнение к setsebool -P httpd_can_sendmail 1 вам нужно разрешить apache подключаться снаружи: setsebool -P httpd_can_network_connect 1

0 голосов
/ 30 января 2012

То, что вы можете отправлять электронные письма из командной строки, не означает, что любой пользователь может (например, apache).

Убедитесь, что apache действительно может отправлять электронные письма:

sudo -u apache sendmail root@localhost

Прочитайтефайл журнала почты (обычно /var/log/mail.log), чтобы увидеть, что произошло.Входящие сообщения root обычно находятся в / var / spool / mail / root).Типп: используйте другого пользователя, отличного от root, если вы не хотите использовать root в качестве морской свинки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...