Связка nginx+fcgi+php — не отправляется почта.
GNU/Linux, UNIX, Open Source → Программное обеспечение
Vlad Borovcov
написал 4 июня 2010 года в 09:42 (2857 просмотров)
Ведет себя
как благородный джентельмен; открыл 35 тем в форуме, оставил 70 комментариев на сайте.
Доброго времени суток!
В с целью повышения производительности, решил отказаться от apache принцепе. Использую nginx, а пхп работает через fastcgi.
В php перестала работать функция mail. при этом, если выполнить php-cgi script_name.php из консоли, то почта отправляется и приходит туда куда надо. А если через веб обратиться к этому скрипту, то ни ошибок ни почты.
В чём может быть проблема?
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Может быть, проблема в правах? (У пользователя, под которым запускается php в nginx+fcgi, не хватает прав на обращение к sendmail/куда-то там еще, а при запуске из консоли у соответствующего пользователя такие права есть.)
Возможно. nginx и пхп работают с правами nginx:nginx. А из коносли я почту пытался отправлять из под рута.
А как можно проверить привелегии? И где задаются привелегии доступа к утилите /usr/bin/sendmail?
Плюс, я думаю, если бы не хватало прав, я мог бы видеть это в логах, т.к. в данный момент у меня стоит уровень логгирования — debug…
Всё, разобрался. Большое спасибо Дмитрию Шурупову за намек относительно привелегий.
Проблема была в том, что у пользователя nginx стояла домашняя директория /dev/null, это было задано portage автоматически. А nbsmtp почему то там пытался что-то искать, как было выяснено с помощью strace.
Проблему решил утём назначения пользовател nginx существующей домашней директории.
Тему можно закрыть.