Poczta/wysy

Ogólne pytania dotyczące systemu
Robert007
Beginner
Posty: 169
Rejestracja: 19 stycznia 2010, 07:39

Poczta/wysyłka SMTP przez php.

Post 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: <[email protected]> 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.
Robert007
Beginner
Posty: 169
Rejestracja: 19 stycznia 2010, 07:39

Post 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.

Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post 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?
Robert007
Beginner
Posty: 169
Rejestracja: 19 stycznia 2010, 07:39

Post 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: [email protected]
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.
Awatar użytkownika
Andyk
Beginner
Posty: 125
Rejestracja: 08 listopada 2008, 01:24

Post autor: Andyk »

zobacz może czy zadziała funkcja mail()

Kod: Zaznacz cały

<?php    if(mail('[email protected]', 'test', 'test wysyłki'))    
{       
echo 'udalo sie wyslac';    
}
Robert007
Beginner
Posty: 169
Rejestracja: 19 stycznia 2010, 07:39

Post 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?
Awatar użytkownika
Andyk
Beginner
Posty: 125
Rejestracja: 08 listopada 2008, 01:24

Post 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.
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post 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ś?
Awatar użytkownika
Andyk
Beginner
Posty: 125
Rejestracja: 08 listopada 2008, 01:24

Post 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.
ODPOWIEDZ