linux (fedora 20) msmtp конфигурация отправляет из оболочки, но не с PHP/apache, я в тупик ... моя цель - просто отправить электронную почту через мой gmail smtp от моего веб-сервера разработки локальный, чтобы проверить вывод кода, который отправляет почтуКонфигурация linux msmtp отправляет из оболочки, но не получается из PHP/apache
php.ini файл Sendmail читает: sendmail_path =/USR/BIN/msmtp --debug -C/и т.д./msmtprc --read-получателей
В системе используется только один php.ini, используемый как для CLI, так и для web-сервера, расположенного по адресу /etc/php.ini
Права доступа o п/и т.д./msmtprc установлены на апаш: апаш 600
следующих команд, как корневая работу и производить тестовое сообщение:
- PHP -r «почта ('[email protected] '' Новым Test Email ',' Test email body '); "
- runuser -l apache -c '/ usr/bin/msmtp --debug -C/etc/msmtprc --read-recipients < /var/www/html/test.mail' (test.mail включает в себя и из линии)
но Apache/PHP выдает ошибку, когда функция PHP почты вызывается из следующего сценария:
if (mail('[email protected]', 'Newest Test Email', 'Test email body'))
print "Email successfully sent";
else
print "An error occured";
файлы журнала во время ошибки чтения следующим образом:
- /вар/log/httpd/error_log: msmtp: не удается подключиться к smtp.gmail.com, порт 587: Доступ запрещен msmtp: не удалось отправить почту (счет по умолчанию из/и т.д./msmtprc)
/и т.д./msmtprc содержит:
defaults
auth on
tls on
tls_trust_file /etc/pki/tls/cert.pem
account default
host smtp.gmail.com
port 587
user [email protected]
from [email protected]
password [******]
auth on
syslog on
приветствуются любые указатели в правильном направлении ... только для того, чтобы достичь простой возможности для функции localhost php mail для отправки электронной почты через мой gmail smtp-сервер - это не конфигурация производственного сервера, это мой локальный веб-сервер apache/php для веб-разработки
Просто к сведению: Я использую msmtp (из EPEL depo) на CentOS 6, и я смог использовать ''/etc/msmtprc'' с chmod, установленным в '' 0644'', и chown, установленный в '' root: root'', не проблема. Я не знаю, откуда взялось требование установить chmod на '' 0600'' и chown для пользователя, который будет использовать msmtp, но это не требуется. – ub3rst4r
пользователь, который запускает php-процесс и запускает msmtp, должен, по крайней мере, читать файл * msmtprc *, также вы не должны использовать '/ etc/msmtprc', просто используйте' -C', чтобы указать путь, просто убедитесь, что один и тот же пользователь выше может пройти через родительские каталоги. – Alex