Привет всем! я тут впервые, просьба ногами не пинать. Проблема в следующем. Есть простой скрипт: <?php $res = mail("aaa@sss.com", "123", "123"); var_dump($res); ?> Если этот скрипт вызвать из под root с консольки, >php ./mail.php то почта на адрес приходит. Если выполнять через веб сервер, то всегда возвращается bool(false) в переменной $res. Подскажите почему так происходит и как с этим бороться.
На *nix серверах иногда возвращается false, а почта приходит. Также иногда (тоже в *nix) приходится пользовать "sendmail".
Почта не приходит =( Функция mail() как раз и юзает sendmail, а точнее "sendmail -t -i". В логи maillog ничего не падпет. Я так подозреваю, что проблема в правах пользователя под которым запускается php/apache.
kinguru, а если просто sendmail вызывать напрямую, шлет? а если из под юзверя, под которым апач живет?
Devil хостер это я Горбунов Олег если из-под юзверя apache вызвать sendmail, говорит следующее: WARNING: RunAsUser for MSP ignored, check group ids (egid=48, want=51) can now write to queue directory /var/spool/clientmqueue/: Permission denied вот. Права доступа на папку clientmqueue smmsp:smmsp 770.
kinguru, ну дык и что же непонятного? Если лень подумать о том как правильно раздать права - просто поставьте 777... и все заработает.
Просто попробуйте, если сработает, то тогда думайте, как правильно раздать права - если нет, надо искать дальше...
avm расскажите мне плиз непонятливому и как же правильно раздавать права? на этой папке права должны быть такие как они выставлены, если вы этого не знаете. Если поменять права на 777, то всё работает, но дык этого оставлять так низзя, сами понимаете почиму. Вопрос в следующем, где нада крутить чтобы гапач мог вызывать sendmail под юзером apache? пробовал добавить юзверя apache в группу smmsp - не помогает.
неа, выключен. Не помогает потому что проверяется gid данного пользователя, а не его членство в других группах, а его gid = apache.
хорошо. только я за это беру деньги... а для простого решения именно этого вашего случая - проще всего: man sudo
Я сам в никсах полный ноль, но тут товарищи советуют: либо с chmod mail.local непорядок, либо в sendmail.cf параметры неверные, либо chmod/chown на директорию clientmqueue неверны, а еще submit.cf может быть в некоторых версиях sendmail