Puncte:0

PHP mail() returnează FALSE, dar întregul rainloop funcționează - Postfix, Dovecot, PHP 7.3

drapel ma

Am avut aceasta problema mai devreme dar am reusit cumva sa o repar. La o lună după ce a trebuit să reinstalez Dovecot și Postfix și a apărut aceeași eroare.

In al meu php.ini care se află la /etc/php/7.3/apache2/ este sendmail_path setat la

sendmail_path = /etc/postfix

Scrie că am o problemă cu permisiunile:

user@occamy:/etc$ sudo tail /var/log/mail.warn
21 octombrie 16:27:36 localhost postfix/sendmail[20073]: fatal: /etc/postfix/dynamicmaps.cf: deschiderea fișierului eșuată: permisiunea refuzată
21 octombrie 16:28:36 localhost postfix/sendmail[20079]: fatal: /etc/postfix/dynamicmaps.cf: deschiderea fișierului eșuată: permisiunea refuzată
21 octombrie 16:35:02 localhost postfix/postfix-script[20270]: avertisment: linkul simbolic părăsește directorul: /etc/postfix/./makedefs.out
21 octombrie 16:35:02 localhost postfix/postfix-script[20273]: avertisment: linkul simbolic părăsește directorul: /etc/postfix/./postfix_ab/makedefs.out
21 octombrie 16:35:07 localhost postfix/sendmail[20328]: fatal: /etc/postfix/dynamicmaps.cf: deschiderea fișierului eșuată: permisiunea refuzată
21 octombrie 16:35:32 localhost postfix/sendmail[20350]: fatal: /etc/postfix/dynamicmaps.cf: deschiderea fișierului eșuată: permisiunea refuzată
21 octombrie 16:37:00 localhost postfix/postfix-script[20565]: avertisment: linkul simbolic părăsește directorul: /etc/postfix/./makedefs.out
Oct 21 16:37:00 localhost postfix/postfix-script[20568]: avertisment: linkul simbolic părăsește directorul: /etc/postfix/./postfix_ab/makedefs.out
21 octombrie 16:37:07 localhost postfix/sendmail[20623]: fatal: /etc/postfix/dynamicmaps.cf: deschiderea fișierului eșuată: permisiunea refuzată
21 octombrie 16:37:15 localhost postfix/sendmail[20625]: fatal: /etc/postfix/dynamicmaps.cf: deschiderea fișierului eșuată: permisiunea refuzată

/etc/postfix/dynamicmaps.cf

Am avut aceeași problemă cu main.cf. Am rezolvat-o cu chmod 775, care nu este chiar așa de bine, cred...

Apoi scrie această eroare de permisiune. Cel mai ciudat lucru este progresul pe care îl fac pentru a obține e-mail:

  1. E-mailul returnează FALSE atunci când trimiteți e-mail()
  2. Schimbarea întregului postfix director la perm. 775 și trimiterea e-mailului - returnează TRUE
  3. E-mailul nu este primit
  4. Revenirea la toate permisiunile anterioare pentru fiecare fișier
  5. E-mailul a fost primit magic, dar nu îl poate trimite din nou. Aa și repetați de la punctul 1

De asemenea, când am stabilit hărți dinamice.cf la chmod 775, sudo postconf -m scrie:

btree
cidr
mediu
eșuează
hash
in linie
intern
memcache
nis
pipemap
proxy
randmap
expresie regulată
socketmap
static
tcp
texthash
unionmap
unix

si mysql lipsește cu acele permisiuni setate.

Va multumesc anticipat pentru raspunsurile voastre!

Puncte:0
drapel gu

Ați personalizat sendmail_path parametru fără a ști ce face.

De la documente PHP:

Unde sendmail programul poate fi găsit, de obicei /usr/sbin/sendmail sau /usr/lib/sendmail. configurați face o încercare sinceră de a-l găsi pe acesta pentru tine și de a seta o valoare implicită, dar dacă nu reușește, o poți seta aici.

Cel mai probabil nu trebuie să-l reglați, deoarece va funcționa implicit dacă toate pachetele sunt din managerul de pachete și dacă trebuie să-l reglați, cu siguranță nu puteți trece un folder ca valoare.

Erorile de permisiune de la postfix sunt probabil din cauza faptului că proprietarii fișierelor nu sunt configurați corect. Ca regulă generală, chmod sau chown în /etc ar trebui să fie cel puțin neobișnuit.

Junek avatar
drapel ma
Bine, deci ar trebui să las sendmail_path necompletat
Junek avatar
drapel ma
Nu există nicio schimbare după aceea EDITARE: PHP mail() returnează TRUE, doar că nu a fost primit niciun e-mail
Ginnungagap avatar
drapel gu
Ar trebui să-l lăsați comentat, nu gol, deoarece nu sunt sigur că este interpretat în același mod.
Junek avatar
drapel ma
S-a comentat, acum mail() returnează FALSE
Junek avatar
drapel ma
/var/log/mail.err returnează în continuare fișierul dynamicmaps.cf deschis eșuat: Permisiune refuzată Încă nu am restabilit permisiunile pentru main.cf, dar cred că voi obține aceeași eroare fatală
Ginnungagap avatar
drapel gu
Listați toate drepturile și proprietarii configurației dvs. postfix. L-ai restaurat dintr-o copie de rezervă?
Junek avatar
drapel ma
Da, este restaurat
Junek avatar
drapel ma
Eroarea de azi spune: localhost postfix/sendmail[29797]: fatal: deschide /etc/postfix/main.cf: Permisiune refuzată
Junek avatar
drapel ma
Vă rog, primiți doar o eroare de permisiune și nu puteți face nimic cu asta.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.