konfiguracja email

0

Witam

czy możecie podać swoją sekcję email z pliku __php.ini __, Ja mam :

<ort>[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25
</ort>

Czy SMTP jest domyślnie na localhost ? Mam kłopoty z wysyłką email, w ogóle nie wysyła

0

Mówisz o Windows? Domyślnie jest ustawione na localhost.
Ale czy działa - zależy czy na localhost (tym samym serwerze co serwer HTTP) masz faktycznie na porcie 25 serwer SMTP ustawiony. Jeśli nie - potrzebujesz takiego, albo serwera zewnętrznego.

Aczkolwiek PHP domyślnie nie umie porozumiewać się ze współczesnymi serwerami SMTP używającymi uwierzytelnienia, więc do skorzystania np. z GMaila potrzebujesz zewnętrznej klasy takiej jak Swiftmailer.

Możesz też użyć takich rzeczy jak sendmail albo qmail - gdzie ten pierwszy ma też chyba wersję dla Windows, ale nigdy tego nie używałem.

0

testowałem to dla Ubuntu, już wcześniej zainstalowałem sendmail ale wciąż coś nie hula, faktycznie muszę jeszcze sprawdzić na jakim porcie działa SMTP- jeszcze nie wiem jak, ale się dowiem :)
Pisząc aplikację webową użytkownik może korzystać albo z Windows albo Linux, czy jest uniwersalny środek na wysłanie emaila z PHP, bo z postu powyżej wynika, że działa to różnie

0

testuje dla Ubuntu, jak na razie w logach apache otrzymuje : /usr/sbin/sendmail: connect: Connection refused
i nieważne jakich zmian bym dokonał w php.ini

Wydałem też polecenie : telnet alt4.gmail-smtp-in.l.google.com 25 i niestety także kiszka telnet: Unable to connect to remote host: Connection timed out

0

Ale gmail ma troche inny SMTP:

smtp.gmail.com (use authentication) (użyj uwierzytelniania)
Use Authentication: Yes (Użyj uwierzytelnienia: Tak)
Port for TLS/STARTTLS (Port dla połączeń TLS/STARTTLS): 587
Port for SSL (Port dla połączeń SSL): 465

0

Mówimy o Linuksie, więc zacznijmy od tego, że:

Used under Windows only: host name or IP address of the SMTP server PHP should use for mail sent with the mail() function.

smtp i smtp_port są tylko pod Windows! PHP pod Linuksem używa tylko sendmail_path. Reszta konfiguracji powinna zależeć już od sendmaila, nie od php.ini.

@emfałsi: smtp.gmail.com jest dla użytkowników GMaila pragnących wysłać mail do świata. Jeżeli chcemy wysłać mail do GMaila, potrzebujemy dostać listę MX dla tej domeny.

MX dla gmail.com:

gmail.com mail is handled by 40 alt4.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 30 alt3.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 20 alt2.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 5 gmail-smtp-in.l.google.com.
gmail.com mail is handled by 10 alt1.gmail-smtp-in.l.google.com.

Jak widać alt4 jest najgorszym możliwym wyborem, używanym w ostateczności. Połączenie do gmail-smtp-in.l.google.com na porcie 25 działa, przynajmniej przed chwilą działało.

@amator1, sprawdź czy sendmail "z palca" wysyła wiadomości jak trzeba. Obstawiam, że wina leży w konfiguracji sendmaila, bo to z niego korzysta PHP, ignorując jakiekolwiek inne ustawienia. Przepatrz /var/log/maillog (albo mail.log) w poszukiwaniu gdzie mogą być problemy.

0

już to robiłem, w logach pusto, a sendmail nie wysyła, szukam dalej, dzięki za podpowiedzi

0

ok, teraz skrypt PHP przeszedł, funkcja mail zwróciła true , ale nie otrzymuje wiadomości na Gmail'a.
Nie wiem czy w pliku /etc/hosts/ jest wszystko poprawnie, cały czas mam komunikat :

Nov  4 12:20:47 daro-desktop sm-mta[10460]: pA4BHHe2010458: to=<[email protected]>, ctladdr=<www-data@daro-desktop> (33/33), delay=00:03:30, xdelay=00:03:30, mailer=esmtp, pri=120446, relay=alt4.gmail-smtp-in.l.google.com. [74.125.45.27], dsn=4.0.0, stat=Deferred: Connection timed out with alt4.gmail-smtp-in.l.google.com.

Nov  4 12:21:01 daro-desktop sm-msp-queue[10523]: unable to qualify my own domain name (daro-desktop) -- using short nam

W pliku /etc/mail/aliases nic też nie ruszałem, zapodajcie przykłady, gdzie trzeba coś zmienić ?

Dodam jeszcze wywołanie komendy mailq :

daro@daro-desktop:~$ **sudo mailq ENTER**
MSP Queue status...
/var/spool/mqueue-client is empty
		Total requests: 0
MTA Queue status...
		/var/spool/mqueue (2 requests)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
pA4BHHe2010458      104 Fri Nov  4 12:17 <www-data@daro-desktop>
                 (Deferred: Connection timed out with alt4.gmail-smtp-in.l.goo)
					 <[email protected]>
pA4BBFM3010289      104 Fri Nov  4 12:11 <www-data@daro-desktop>
                 (Deferred: Connection timed out with alt4.gmail-smtp-in.l.goo)
					 <[email protected]>
		Total requests: 2

Coś jeszcze muszę zmienić.....

0

Hm, a sprawdziłeś najprostsze przypuszczenie - czy twój ISP nie blokuje przypadkiem wychodzących połączeń na port 25?
W zeszłym roku kilku największych to zablokowało, aby zmniejszyć problem spamu (m.in. TP). Wychodząc z założenia, że programy pocztowe używają 587 (bo to docelowy port dla SMTP z AUTH), a na 25 siedzą tylko serwery (których większość użytkowników nie posiada) i spamboty.

W takim przypadku logicznie by było, że robi connection timed out dla wszystkich MX-ów, aż wreszcie kończy na alt4, do niego też się nie może podłączyć, aż zapisuje problem w logach. Twój telnet także nie mógł się podłączyć na porcie 25, a alt4 akurat działa (przynajmniej teraz).

0

no dobra port portem, ale tego nie kapuje : daro-desktop sm-msp-queue[10523]: unable to qualify my own domain name (daro-desktop)

0

Twój hostname ustawiony jest na "daro-desktop", który nie jest FQDN (w pełni kwalifikowaną nazwą domeny), czego serwer SMTP nie lubi najwyraźniej.
Zedytuj /etc/hosts i ustaw sobie jakąś fikcyjną (albo prawdziwą) domenę dla 127.0.0.1.

1 użytkowników online, w tym zalogowanych: 0, gości: 1