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

Πως να στείλω email που να μην γίνει block;


digimyth

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

Δημοσ.

Καλησπέρα.

 

Προσπαθώ να στείλω email απο τη σελίδα μου για να κάνω πιστοποίηση σε κάποιον χρήστη αλλά το email δε φτάνει ποτέ παρόλο που η συνάρτηση επιστρέφει true.

Το δοκίμασα σε 3 λογαριασμούς που έχω και μόνο στο gmail φτάνει. Στο hotmail ούτε στα junk δε πάει.

Ξέρει κανείς πως να το κάνω να φτάνει τουλάχιστον; Ίσως κάποιος admin από το insomnnia;

>
<?php
        //Send email for verification
        $to = "[email protected]";
        $subject = "Hello!";
        $body = "Hi,\n\nHow are you?";
        if ( mail( $to, $subject, $body ) )
        {
           echo( "<p>Message successfully sent to ". $to . "</p>" );
        }
        else
        {
           echo( "<p>Message delivery failed...</p>" );
        }
     ?>

Δημοσ.

Καταρχήν δοκίμασε να γράψεις κάτι άλλο (ακομα και ελληνικά) στο subject και το μήνυμα. Μικρά email με τίτλους Hello! ή σκέτο μήνυμα How are you ειναι πολύ πιθανό να πέσουν ... θύματα ... spam filter. ΕΠίσης βάλε from για τον ίδιο ακριβώς λόγο.

Ενδεικτικά δοκίμασε το παρακάτω

>        <?php
        //Send email for verification
        $to = "[email protected]";
        $subject = "Μια δοκιμαστική αποστολή!";
        $body = "Παραλήπτη τι λεει,\n\nπάρε και μήνυμα";
//βαλε ένα from
$from = "[email protected]";
$headers = "From: $from";
//βαλε το from μεσα στο email
//         if ( mail( $to, $subject, $body ) )
        if ( mail( $to, $subject, $body, ,$headers ) )
        {
           echo( "<p>Message successfully sent to ". $to . "</p>" );
        }
        else
        {
           echo( "<p>Message delivery failed...</p>" );
        }
     ?>

 

O hoster ειναι καθαρός απο spam ή μήπως εχει μπει σε λίστες;

Δημοσ.

Μπα τίποτα...

Δοκίμασα και το παρακάτω:

>
	<?php
		 //Send email for verification
		$to = "[email protected]";
		$subject = "Γειά σου παραλήπτη";
		$message = "Γειά σου τι κάνεις;\n\nΕίμαι ο φίλος σου!";
		$eol = "\r\n";
		$headers .= 'From: <[email protected]>'.$eol;
		$headers .= "X-Mailer: php";
		$headers .= 'Reply-To: <[email protected]>'.$eol;
		$headers .= 'Return-Path: <[email protected]>'.$eol;    // these two to set reply address
		if ( mail( $to, $subject, $message, $headers ) )
		{
		   echo( "<p>Message successfully sent to ". $to . "</p>" );
		}
		else
		{
		   echo( "<p>Message delivery failed...</p>" );
		}
	?>

Ο χοστ δε ξέρω αν είναι στις μαύρες πάντως δεν είναι free host.

Δημοσ.

Εγώ θα έκανα δυο πράγματα.

Πρώτον θα δοκίμαζα να το στέιλω σε κάποιο ΜΗ Hotmail,yahoo,gmail λογαριασμό email (π.χ θα το εστελνα σε forthnet ή otenet) και αν και πάλι είχα πρόβλημα, θα επικοινωνούσα με τον hoster για να επιβεβαιώσω οτι φεύγουν τα email και οχι οτι ειναι στοιβαγμένα σε κάποιο /var/

Δημοσ.

Οπως ειπε στο πρώτο post στο gmail φτανουν.

 

Όταν ο sendmail daemon ανοίγει επικοινωνία με τον εκάστοτε mail provider δεν σημαίνει οτι η επικοινωνία ειναι επιτυχής ή ότι το email στέλνεται. Η επικοινωνία με το gmail μπορεί να ήταν επιτυχής και να στάλθηκε το email αλλα με το hotmail δεν ξέρουμε. Αν το email ΔΕΝ έχει φύγει φταίει ο sendmail του hoster, αν εχει φύγει τότε το email το τρώει κάποιο spam φίλτρο.

 

@digimyth

Στο from χρησιμοποίησες το email που γίνεται φιλοξενία ή κάποιο άσχετο αποστολεα (π.χ. [email protected] );

Δοκίμασε αποστολή σε κάποιο απο otenet/forthnet η γενικά οποιοδήποτε αλλο email απο τα γνωστά

Δημοσ.
Όταν ο sendmail daemon ανοίγει επικοινωνία με τον εκάστοτε mail provider δεν σημαίνει οτι η επικοινωνία ειναι επιτυχής ή ότι το email στέλνεται. Η επικοινωνία με το gmail μπορεί να ήταν επιτυχής και να στάλθηκε το email αλλα με το hotmail δεν ξέρουμε. ...
Δημοσ.

Απ' ότι κοιτάω γενικά μάλλον το τρώνε τα φίλτρα γιατί το θεωρούν σπαμ... Κοίταζα τη συνάρτηση mail() στο php.net και βλέπω ότι θέλει το φορμάτ να πληρεί κάποια στάνταρντ. Σκέφτομαι μήπως το κάνω από smtp αλλά είμαι καινούργιος σε αυτό και δε ξέρω τι παίζει με τα μειλ.

Το δοκίμασα στο μαιλ του πανεπιστημίου και ούτε εκεί πήγε αν και αυτό είναι περίεργο μιας που οι σέρβερς του πανεπιστημίου είναι κωλ0χ@νίο, βέβαια χρησιμοποιούν το webmail horde platform και δε ξέρω τι φίλτρα έχουν βάλει εκεί... Δεν έχω κάποιο άλλο λογαριασμό πχ οτενέτ...

Κοιτάω μήπως το κάνω από κάποια έτοιμη κλάση αλλά προς το παρόν δε ξέρω να τις σετάρω οπότε το ψάχνω.

Δημοσ.

Το έκανα και με smtp αλλά τζίφος. Ναι βάζω υπαρκτό μειλ και server και όλα. Μου εμφανίζει το παρακάτω μήνυμα όταν χρησιμοποιώ το PHPMailer αλλά το μήνυμα δε φτάνει ποτέ. Στο gmail όμως πάνε όλα!

Strict Standards: date_default_timezone_get() [function.date-default-timezone-get]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Moscow' for 'MSK/3.0/no DST' instead in //test_smtp_basic.php on line 12

SMTP -> FROM SERVER:220-sv161.σφφ.net ESMTP Exim 4.69 #1 Tue, 21 Dec 2010 17:00:03 +0300 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail.

SMTP -> FROM SERVER: 250-sv161.σδφσ.net Hello sv161.σδφσ.net [76.191.99.167] 250-SIZE 52428800 250-PIPELINING 250-AUTH PLAIN LOGIN 250-STARTTLS 250 HELP

SMTP -> FROM SERVER:250 OK

SMTP -> FROM SERVER:250 Accepted

SMTP -> FROM SERVER:354 Enter message, ending with "." on a line by itself

SMTP -> FROM SERVER:250 OK id=1PV2l2-0005i0-1m

Message sent!

Δημοσ.

Ειχα παλιοτερα παρόμοιο πρόβλημα, και μου ειχαν δώσει το εξής για ελεγχο αν ο server ειναι blacklisted.

http://www.spamhaus.org/lookup.lasso .

 

Δες το τοπικ μου αν θες, ισως βρεις τπτ χρήσιμο, αν και δεν λεει και πολλα

http://www.insomnia.gr/topic/330824-php-mail-παει-στα-junk-στο-hotmail/

Δημοσ.

Μίλα με την hosting εταιρία σου, είναι συνηθισμένο κάθε εταιρία να έχει λίγο διαφορετικά setαρισμένο το mail server της και αυτό αλλάζει τον τρόπο με τον οποίο μπορείς να στέλνεις email. Το πρώτο πράγμα που θα έψαχνα θα ήταν να δω στην knowledge base τους αν έχουν κάποιο sample script για το πως στέλνεται ένα email.

 

 

Δημοσ.

Βρήκα αυτό:

What is the path to the Sendmail installation on your servers?

It is /usr/sbin/sendmail

Αλλά δε ξέρω σε τι εξυπηρετεί αυτός ο φάκελος και πως το κάνω...

Επίσης διάβασα κάπου ότι με τη συνάρτηση mail() στέλνεις mail από τον ίδιο τον σέρβερ και για αυτό το μήνυμα δεν περνάει από τα φίλτρα. Αυτό που πρέπει να κάνω θεωρητικά είναι να το στείλω από τον mail server δηλαδή το mime, αλλά δεν έχω βρει τρόπο ακόμη. Προσπαθώ να χρησιμοποιήσω το PEAR Mail το οποίο εγκατέστησα στο σέρβερ από το cpanel αλλά μου έβγαζε errors στα μονοπάτια που γινόντουσαν κάποια include.

Αυτό που δε καταλαβαίνω είναι γιατί να βγάλει σφάλματα εφόσον το Pear Mail είναι ένα έτοιμο ανοιχτού κώδικα πακέτο και όταν το εγκαθιστάς θα πρέπει να λειτουργεί; Το έχει χρησιμοποιήσει ποτέ κανείς αν ξέρει να πει πως δουλεύει...;

 

Παραξενεύομαι με όλη αυτή την υπόθεση γιατί όλες οι σελίδες στο registration στέλνουν email για επιβεβαίωση και άντε το πολύ να πάει στα junk αλλά όχι και να μην πάει... :(

Δημοσ.

Βρήκα τι φταίει τελικά (έτσι πιστεύω δηλαδή) από κάποιες δοκιμές που έκανα με τον σέρβερ ενός φίλου. Έτρεξε κώδικα από τον σέρβερ του για αποστολή εμαιλ και μου ήρθε κανονικά το μειλ, ενώ ο ίδιος κώδικας δεν ήρθε ποτέ στο μειλ μου από τον σέρβερ που έχω. Αυτό γίνεται γιατί ο σέρβερ στον οποίο έχω τη σελίδα δεν έχει "reverse DNS". Δηλαδή τα φίλτρα του hotmail για παράδειγμα ελέγχουν τη διαδρομή αντίστροφα από την οποία ήρθε το μέιλ και αν δεν είναι ορατή τότε το απορρίπτουν. Έστειλα ένα μήνυμα στην εξυπηρέτηση πελατών του σέρβερ και ελπίζω να το διορθώσουν...

 

Ευχαριστώ.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...