Strona 1 z 1

Poczta/wysyłka SMTP przez php.

: 26 stycznia 2014, 19:30
autor: Robert007
Witam, instalowałem postfix, dovecot wg. artykułu:
content/132-Kompletna-instalacja-serwera-LAMP-i-MAIL

Plus doinstalowałem jeszcze pakiet php-net-smtp. Choć nie wiem czy potrzebny.
(serwer w "domowym zaciszu" działający na wirtualce w VirtualBox).

Wysyłam e-mail metodą SMTP. Dane oczywiście SMTP poprawne bo działają na kliencie pocztowym.
Logi debugera:

Kod: Zaznacz cały

220-nema.kylos.pl ESMTP Exim 4.82 #2 Sun, 26 Jan 2014 19:19:58 +0100  220-We do not authorize the use of this system to transport unsolicited,  220 and/or bulk e-mail. 

hello: 250-nema.kylos.pl Hello localhost [127.0.0.1] 250-SIZE 104857600 250-AUTH PLAIN LOGIN 250 HELP 
from: 250 OK 
to: 250 Accepted 
data: 354 Enter message, ending with "." on a line by itself 
The following SMTP error was encountered: 
Unable to send email using PHP SMTP.  Your server might not be configured to send mail using this method.

User-Agent: RobotCMS Date: Sun, 26 Jan 2014 19:19:59 +0100 From: "NAZWA"  Return-Path:  Subject: =?UTF-8?Q?Zmiana_has=c5=82a_do_konta?= To: EMAIL Reply-To: "mail@{domena}"  X-Sender: mail@{domena} X-Mailer: NAZWA X-Priority: 3 (Normal) Message-ID: <52e551cf5b26d@robotsite.kylos.pl> Mime-Version: 1.0   Content-Type: multipart/alternative; boundary="B_ALT_52e551cf5b329"  This is a multi-part message in MIME format. Your email application may not support this format.  --B_ALT_52e551cf5b329 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit  Witaj [NAZWA]! Zmień hasło klikając w linka: http://[DOMENA]/panel/user_activation/activation/1/b22e4d11441ec7b3cdd7d4c79f258a08   --B_ALT_52e551cf5b329 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable  <p>Witaj [NAZWA]! Zmień hasło klikając w linka:</p> <p><a href=3D"http://DOMENA/panel/user_activation/activation/1/b2= 2e4d11441ec7b3cdd7d4c79f258a08">http://DOMENA/panel/user_activati= on/activation/1/b22e4d11441ec7b3cdd7d4c79f258a08</a></p>  --B_ALT_52e551cf5b329--
Oczyiście {domena} DOMENA, EMAIL, to ja zakryłem to. Na serwerze z poprawną konfiguracją wysyła maila OK.

: 27 stycznia 2014, 16:27
autor: Robert007
Dokładniej o jaką konfiguracje tutaj chodzi? W php.ini trzeba coś tu skonfigurować, tylko co?

Kod: Zaznacz cały

The following SMTP error was encountered:  Unable to send email using PHP SMTP.  Your server might not be configured to send mail using this method.


: 27 stycznia 2014, 20:32
autor: lessmian2
Napisz dokładnie co to ta metoda SMTP - najlepiej wklej kawałek kodu który jest odpowiedzialny za wysłanie maila. Łączysz się bezpośrednio do zdalnego serwera czy wysyłasz przez lokalne MTA?

: 27 stycznia 2014, 20:49
autor: Robert007
Używam konta SMTP który udostępnia mi firma kylos.pl, w cpanelu stworzyłem sobie e-mail i próbuję z niego wysłać. Niestety nie daje rady wysłać, zanim wyskoczą mi te wyżej logi to "długo myśli".
dane jakie podaje:

Kod: Zaznacz cały

host: mail.robotsite.kylos.pl
user: mail@robotsite.kylos.pl
port: 25
Używam frameworka CodeIgniter. Używa klasy: http://pastebin.com/b3HgQ7Xs
Oczywiście klasa nie ma wini gdyż na hostingach normalnie wszystko działa.

Kod: Zaznacz cały

var    $_protocols        = array('mail', 'sendmail', 'smtp');
Używam SMTP.

Wydaje mi się że problem leży gdzieś w konfiguracji serwera ale nie bardzo wiem gdzie mam szukać. Logować widać się się loguje do kylos.pl mail, czyli autoryzacje przechodzi.

: 03 lutego 2014, 00:57
autor: Andyk
zobacz może czy zadziała funkcja mail()

Kod: Zaznacz cały

<?php    if(mail('konto@domena.pl', 'test', 'test wysyłki'))    
{       
echo 'udalo sie wyslac';    
}

: 03 lutego 2014, 13:38
autor: Robert007
nieudane wysłanie
log:
Feb 3 13:37:23 dom postfix/sendmail[1482]: fatal: open /etc/postfix/main.cf: No such file or directory
Coś widać jest nie tak. Ogółem plik istnieje ale po instalacji postfixa nie miałem tego pliku i mam samą zawartość:

Kod: Zaznacz cały

smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = mail.serwer-testowy.pl
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
smtpd_sasl_security_options = noanonymous
Czyli nie do końca skonfigurowany. Poza tym to raczej nie ma nic związanego z SMTP?

: 03 lutego 2014, 23:29
autor: Andyk
No to Panie jak nie było pliku, no to postfix nie działał. Postfix ma ogólnie dwa pliki konfiguracyjne main.cf i master.cf.
Znajdź sobie jakieś how-to nawet na tym forum jest takie podstawowe i sobie go skonfiguruj a później testuj i patrz w logi.

: 04 lutego 2014, 19:53
autor: lessmian2
Andyk, przy Twojej metodzie (funkcja mail()) używane jest lokalne MTA, które nie jest potrzebne w tym przypadku. Robert007 próbuje nawiązać połączenie SMTP bezpośrednio ze zdalnym serwerem, więc po co mu postfix?
@Robert007, nie możesz wysłać żadnej wiadomości, czy tylko o takiej treści jak wkleiłeś?

: 04 lutego 2014, 23:21
autor: Andyk
Przecież mogę wysłać sobie wiadomość za pomocą funkcji mail() i użyć do wysyłki postfixa. A po co mu postfix to ja nie wiem, napisał na początku, że zainstalował postfixa.
EDIT
lessmian2 wiem już o co Ci chodzi. Ja w takim razie nie rozumiem poruszanego tu problemu.
Nie wiem, po co jest postfix a tym bardziej dovecot jeżeli wysyłka ma być przez bezpośrednie połączenie na port 25 serwera.