Προς το περιεχόμενο

Ubuntu server send email via php


Xvipes

Προτεινόμενες αναρτήσεις

Καλησπέρα,

έχω έναν server ubuntu που είναι virtual machine στο πανεπιστήμιο Πειραιά και αν δε κάνω λάθος έχουν κλειδωμένα αρκετά πράγματα. 

 

Έχω στήσει πάνω του ένα site και θέλω μέσω μιας html φόρμας να στέλνω e-mail στον administator του site.

 

Δοκίμασα να setarw το postfix αλλά δεν έφτασε ποτέ κανένα email στον παραλήπτη.

Δοκίμασα να στείλω μέσω της function mail() της php αλλά πάλι τα ίδια, ενώ μου βγάζει true όταν την χρησιμοποιώ(ότι το έστειλε κανονικά), δεν φτάνει ποτέ στον παραλήπτη(όλα τα πεδία είναι σωστά σεταρισμένα).

 

Παράδειγμα του κώδικα:

<?php 


$recipients = "[email protected]"; 


$headers["From"]    = "[email protected]"; 
$headers["To"]      = "[email protected]"; 
$headers["Subject"] = "Test message"; 


$body = "TEST MESSAGE!!!"; 


$params["host"] = "smtp.gmail.com"; 
$params["port"] = "465"; 
$params["auth"] = true; 
$params["username"] = "[email protected]"; 
$params["password"] = "*******"; 


// Create the mail object using the Mail::factory method 
$mail_object =& Mail::factory("smtp", $params); 


$mail_object->send($recipients, $headers, $body); 
?>

Θεωρώ πως είναι θέμα server αλλά δε μπορώ να βρω που και τι να κοιτάξω.

 

Άνοιξα τις πόρτες 25 και 465 με την εντολή ufw allow 25 π.χ, αλλά και πάλι τα ίδια.

 

Από το php.ini αρχείο πήγα και άλλαξα τον smtp server σε smtp.gmail.com και την πόρτα αλλά ακόμα τίποτα.

 

 

Αν ο server μου τελικά είναι κλειδωμένος και δε μπορώ να στείλω e-mail, υπάρχει κάποιος άλλος τρόπος ώστε μέσω μιας html form να σταλθεί ένα email?

 

Το θέμα είναι σύνθετο οπότε δε ξέρω αν είναι στο σωστό section.

 

Ευχαριστώ για οποιαδήποτε απάντηση.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Kαλησπερα φιλε μου,

εχω κανει και εγω κατι αντιστοιχο σε ενα site που εχω στησει για να στελνει εμαιλ,

Για τσεκαρε 

 

require 'class.phpmailer.php';
$mail = new PHPMailer;

$mail->IsSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp.****.com';  // Specify main and backup server
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = '******';                            // SMTP username
$mail->Password = '******';                           // SMTP password
$mail->SMTPSecure = 'tls';                            // Enable encryption, 'ssl' also accepted

$mail->From = '*******@gmail.com';
$mail->FromName = '****** Registration Info';
$mail->AddAddress([email protected]);  // to email pou thes na paei
$mail->WordWrap = 50;                                 // Set word wrap to 50 characters
$mail->IsHTML(true);                                  // Set email format to HTML
$mail->Subject = 'Account Info';
$mail->Body    = 'Thank you for registering!';
if(!$mail->Send()) {
   echo ':( email couldnt reach you :/';

}
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δυστυχώς ούτε με το δικό σου κατάφερα κάτι(εννοείτε ότι άλλαξα τα κατάλληλα στοιχεία)

<?php 
require 'class.phpmailer.php';
$mail = new PHPMailer;

$mail->IsSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'smtp.gmail.com';  // Specify main and backup server
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = '[email protected]';                            // SMTP username
$mail->Password = '*******';                           // SMTP password
$mail->SMTPSecure = 'ssl';                            // Enable encryption, 'ssl' also accepted

$mail->From = '[email protected]';
$mail->FromName = '****** Registration Info';
$mail->AddAddress([email protected]);  // to email pou thes na paei
$mail->WordWrap = 50;                                 // Set word wrap to 50 characters
$mail->IsHTML(true);                                  // Set email format to HTML
$mail->Subject = 'Account Info';
$mail->Body    = 'Thank you for registering!';
if(!$mail->Send()) 
   echo ':( email couldnt reach you :/';
   	else
   		echo "komple";

?>

Το θέμα είναι στον server μου.Ίσως έχω κάνει και εγώ βλακεία με το postfix.Το έκανα remove τώρα αλλά πάλι δεν φτάνει τίποτα στο email μου(ούτε στα junk)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

ok το έψαξα και με έναν φίλο και μου είπε ότι μάλλον από το GRNET που είναι πάνω ο server, ότι έχουν κλείσει τα email πακέτα.

Υπάρχει άλλος τρόπος να μπορεί να στείλει κάποιος email από το site μου σε ένα συγκεκριμένο παραλήπτη?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

ok το έψαξα και με έναν φίλο και μου είπε ότι μάλλον από το GRNET που είναι πάνω ο server, ότι έχουν κλείσει τα email πακέτα.

Υπάρχει άλλος τρόπος να μπορεί να στείλει κάποιος email από το site μου σε ένα συγκεκριμένο παραλήπτη?

Εβαλες τα καταλληλα αρχεια?

Δες εδω: http://phpmailer.worxware.com/ κατεβαζεις τα αρχεια τα κανεις upload (εξου και το require php.mailerμπλα μπλα)

αυτο που μπορω να σκεφτω ειναι να εχεις εσυ ενα σερβερ/pc/netbook/raspeberry pi η γενικα κατι που να ειναι 24/7 ανοιχτο και να στελνει αυτο εμαιλ.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

ΦΙλε δοκίμασε με το Pear Mail. Σου παραθέτω κώδικα που έκανα εγώ σε μια εργασία του πανεπιστημίου 

require_once "Mail.php";

$from = "<from.gmail.com>";
$to = $Email;
$subject = "Test";
$body= 'Test Email';




$host = "ssl://smtp.gmail.com";
$port = "465";
$username = "[email protected]"; //email
$password = "password"; //kwdikos email


$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));


$mail = $smtp->send($to, $headers, $body);
 

Για να κανεις install το Pear Package:

sudo apt-get install php-pear
sudo pear install mail
sudo pear install Net_SMTP
sudo pear install Auth_SASL
sudo pear install mail_mime

Ελπίζω να βοήθησα!

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Savvas17

 

Το κατάφερα!Σε ευχαριστώ πάρα πολύ.

Αν μπορεί κάποιος να μαντέψει γιατί μπορεί να γινόταν αυτό τι πιθανή εξήγηση θα έδινε?

 

Ευχαριστώ και πάλι όσους μπήκαν στον κόπο να ασχοληθούν.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

ρε όλο το παπεί εδώ μαζεύτηκε?

εγώ που του έβαλα postfix δοκιμαστiκά την έβλεπε την 25 απ έξω

και εκανες relay κανονικά με το postfix?

εγώ που το δοκίμασα δεν έφτασε ποτέ κανένα email. 

βέβαια το πιο πιθανό είναι να μην το είχα setarei σωστά.

koslibpro

και πως μπορώ και στέλνω εγώ τώρα?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

α όχι δεν το χρησιμοποίησα, απλά το έβαλα για να δω αν είναι ανοιχτές οι πόρτες

θα το δοκιμάσω μόλις πάω σπίτι αν στέλνει

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • 3 εβδομάδες αργότερα...

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...