Postfix piping к php: "не могу добавить сообщение в файл: не могу открыть файл: в доступе отказано"
У меня возникли некоторые проблемы с настройкой трубопроводов в приложении php (WHMCS).
Почта приходит на сервер, но она приходит.
Почтовый журнал показывает:-
May 15 12:51:14 hostname postfix/smtpd[2123]: connect from mail-wi0-f177.google.com[209.85.212.177]
May 15 12:51:14 hostname postfix/smtpd[2123]: D475CBB83F: client=mail-wi0-f177.google.com[209.85.212.177]
May 15 12:51:17 hostname postfix/cleanup[2133]: D475CBB83F: message-id=<847AAA86-C2A5-4CE5-9C44-AFCC9CAFA27D@googlemail.com>
May 15 12:51:17 hostname postfix/qmgr[1922]: D475CBB83F: from=<emailaddress@googmlemail.com>, size=2501, nrcpt=1 (queue active)
May 15 12:51:17 hostname postfix/local[2134]: warning: database /etc/aliases.db is older than source file /etc/aliases
May 15 12:51:17 hostname postfix/smtpd[2123]: disconnect from mail-wi0-f177.google.com[209.85.212.177]
May 15 12:51:17 hostname postfix/local[2134]: D475CBB83F: to=<localmailbox@mydomain.com>, relay=local, delay=2.6, delays=2.5/0/0/0.04, dsn=2.0.0, status=sent (delivered to command: php)
May 15 12:51:17 hostname postfix/local[2134]: D475CBB83F: to=<localmailbox@mydomain.com>, relay=local, delay=2.6, delays=2.5/0/0/0.09, dsn=5.1.3, status=bounced (bad recipient address syntax: -q@mydomain.com)
May 15 12:51:17 hostname postfix/local[2134]: warning: unable to create lock file /srv/mydomain.com/public_html/pipe/pipe.php.lock: Permission denied
May 15 12:51:17 hostname postfix/local[2134]: D475CBB83F: to=<localmailbox@mydomain.com>, relay=local, delay=2.7, delays=2.5/0/0/0.12, dsn=5.2.0, status=bounced (cannot append message to file /srv/mydomain.com/public_html/pipe/pipe.php: cannot open file: Permission denied)
May 15 12:51:17 hostname postfix/cleanup[2133]: 7C2B3BB842: message-id=<20130515115117.7C2B3BB842@mydomain.com>
May 15 12:51:17 hostname postfix/bounce[2136]: D475CBB83F: sender non-delivery notification: 7C2B3BB842
May 15 12:51:17 hostname postfix/qmgr[1922]: 7C2B3BB842: from=<>, size=5028, nrcpt=1 (queue active)
May 15 12:51:17 hostname postfix/qmgr[1922]: D475CBB83F: removed
May 15 12:51:18 hostname postfix/smtp[2137]: 7C2B3BB842: to=<myemail@googlemail.com>, relay=aspmx.l.google.com[2a00:1450:400c:c05::1b]:25, delay=0.61, delays=0.03/0/0.2/0.38, dsn=2.0.0, status=sent (250 2.0.0 OK 1368618678 kt8si636900wjb.97 - gsmtp)
May 15 12:51:18 hostname postfix/qmgr[1922]: 7C2B3BB842: removed
Я попытался добавить postfix в каталог /pipe, но это не сработало, я также изменил его на 777, чтобы убедиться, что это не проблема.
Ни одна из них не устранила проблему.
Что-нибудь еще, что я должен сделать, чтобы настроить трубопровод?
Спасибо
2 ответа
Не то чтобы я думаю, что это хорошая идея, но для добавления к файлу процессу необходим доступ на запись к файлу, а не к его каталогу.
Но я предполагаю, что Postfix пытается сделать что-то отличное от того, что вы ожидаете...
Изменить 1:
| php -q /srv/mydomain.com/public_html/pipe/pipe.php
это ошибка:
Команды, содержащие специальные символы, такие как пробел, должны быть заключены в двойные кавычки.
Так что это, вероятно, не распознается как одна команда, но как отдельные операции Postfix:
- труба к
php
- без разницы
- добавить в
/srv/mydomain.com/public_html/pipe/pipe.php
Связанный: Postfix не может создать файл блокировки, разрешение запрещено
Как уже было сказано, убедитесь, что у postfix есть полный доступ к /var/mail/vhosts
работать правильно.