PHP mail() / sendmail не работи след надграждането на Apache 2.4 PHP7

След надграждането до PHP7 всеки един скрипт на моя сървър, използващ PHP функцията за поща, вече не работи :-(

В същото време аз също надстроих от Apache 2.2 на 2.4 и имам чувството, че вероятно тук е проблемът.

Моят файл php.ini съдържа:

sendmail_path = /usr/sbin/sendmail -t -I

Sendmail изпраща имейли, ако опитам от командния ред, така че знам, че работи. Открих грешка, която смятам, че вероятно е свързана с Apache и разрешенията в exim_paniclog:

не може да зададе gid=995 или uid=0 (euid=0): принудително реално = ефективно

Надявам се, че някой може да се е сблъсквал с този проблем и да може да хвърли малко светлина върху него за мен. Благодаря предварително!


person KingRidgehead    schedule 25.05.2016    source източник
comment
Сигурни ли сте, че PHP5 и PHP7 използват един и същ файл php.ini? Правилният sendmail_path показва ли се в изхода, ако стартирате phpinfo();?   -  person Matt Raines    schedule 25.05.2016
comment
Здравей Мат. Отговорът по-долу го реши за мен. Да, phpinfo() показа правилния път. Благодаря все пак за вашия принос.   -  person KingRidgehead    schedule 25.05.2016


Отговори (1)


Три неща, които да опитате:

1) в exim задайте trusted_users = apache (или какъвто и да е вашият потребител на уеб сървър).

2) Опитайте да изключите SELinux и да рестартирате всичко. Ако работи сега, но не е работило преди, тогава ще трябва или да деактивирате SELinux, или да научите как да го конфигурирате, за да позволява това, от което се нуждаете.

3) Вижте http://blog.gaiterjones.com/send-php-mail-ubuntu-upgrade/. Изрично дефинирайте параметъра LimitGIDRange на модула ITK MPM в конфигурацията на модула /etc/apache2/mods-available/mpm_prefork.conf до нещо като

LimitUIDRange 0 2000
person Chris Lear    schedule 25.05.2016
comment
Най-вероятно опция 3) е тази, която трябва да използвате. Вижте bugs.debian.org/cgi-bin/bugreport.cgi?bug =797653 също (маркирано е като грешка, но няма да се поправи) - person Chris Lear; 25.05.2016
comment
Благодаря ти Крис! Ти си звезда. Всъщност точка 3 реши това за мен. Наистина оценявам помощта ти :-) - person KingRidgehead; 25.05.2016