Hírlevelek küldése
Hi,
lehet nem idevaló, de nem találtam jobb helyet neki.
Tehát, szeretnék kb. 7000 hírlevelet kiküldeni (tök legális, semmi spam), saját szerverem van annak az smtp-jét használom. A gondom az, hogy rengeteg levél visszajön, hogy ismeretlen user és az axelerónál 600s graylist-re kerülök. Hogyan lehet elküldeni normálisan ezeket a leveleket. Nem spam küldő vagyok, hanem a feliratkozott usereknek szeretnék hírlevelet küldeni.
üdv.
■ lehet nem idevaló, de nem találtam jobb helyet neki.
Tehát, szeretnék kb. 7000 hírlevelet kiküldeni (tök legális, semmi spam), saját szerverem van annak az smtp-jét használom. A gondom az, hogy rengeteg levél visszajön, hogy ismeretlen user és az axelerónál 600s graylist-re kerülök. Hogyan lehet elküldeni normálisan ezeket a leveleket. Nem spam küldő vagyok, hanem a feliratkozott usereknek szeretnék hírlevelet küldeni.
üdv.
ellenőrizd a mail címeket
Rendszeres időközönként ellenőrizd le a címek helyességét. Ha PHP a kód, akkor ezzel kb. meg lehet oldani, én is találtam valahol, de csak UNIX alatt megy:
{ $result = array();
if (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $Email))
{ $result[0]=false;
$result[1]="$Email is not properly formatted";
return $result;
}
list ( $Username, $Domain ) = split ("@",$Email);
if (getmxrr($Domain, $MXHost))
$ConnectAddress = $MXHost[0];
elseif (gethostbyname("mail.".$Domain))
$ConnectAddress = "mail.".$Domain;
else
$ConnectAddress = $Domain;
$Connect = fsockopen ( $ConnectAddress, 25 );
if ($Connect)
{
if (ereg("^220", $Out = fgets($Connect, 1024)))
{ fputs ($Connect, "HELO ".$_SERVER['HTTP_HOST']."\r\n");
$Out = fgets ( $Connect, 1024 );
fputs ($Connect, "MAIL FROM: <{$Email}>\r\n");
$From = fgets ( $Connect, 1024 );
fputs ($Connect, "RCPT TO: <{$Email}>\r\n");
$To = fgets ($Connect, 1024);
fputs ($Connect, "QUIT\r\n");
fclose($Connect);
if (!ereg ("^250", $From) || !ereg ( "^250", $To ))
{ $result[0]=false;
$result[1]="Server rejected address";
return $result;
}
}
else
{ $result[0] = false;
$result[1] = "No response from server";
return $result;
}
}
else
{ $result[0]=false;
$result[1]="Can not connect E-Mail server.";
return $result;
}
$result[0]=true;
$result[1]="$Email appears to be valid.";
return $result;
}
Ez lekérdezi a szervert, amin a cím lakik, TRUE-val tér vissza, ha létezik a cím, FALSE-sal, ha bármi baja van.
Üdv,
Molnár Péter
RE
a hirlevelkuldes nehezsegei
Mindenkeppen figyelj az alaki kovetelmenyekre: a fejlec legyen teljes, a datum korrekt. A levelben legyen leiratkozasi link, kuldonek valos emailcim legyen megadva. Hivatkozz a levelben a feliratkozas tenyere! Lehet, hogy a cimzett mar nem is emlekszik arra, hogy valaha feliratkozott.
Erdemes valami modot talalni arra, hogy ellenorizd a cimlista valodisagat. A fenti script tenyleg jo (mi ezt hasznaltuk regebben feliratkozaskor a cimek ellenorzesere), keress egy megoldast a hasznalatara.
Probald meg idoben szethuzni a levelek kuldeset: ha adott idotartamon belul a szolgaltato azonos leveleket kap egy felado cimrol, akkor nagy a valoszinusege, hogy automatikusan spammolni fogja. Neked nem letszukseglet, hogy a 7000 leveled 1 ora alatt kimenjen. Ha 3-4 nap alatt vegzel, akkor nagy valoszinuseggel nem fognak "meglatni".
Talan erdemes elgondolkodni azon, hogy ne sajat magad kuld ki a leveleket, hanem egy erre szakosodott tarsasagot bizz meg ezzel. Vannak itthon is ilyen cegek, de talan olcsobban jossz ki, ha kulfoldre viszed az anyagot, en egy 10$ + 5c/level szolgaltatoval talalkoztam egyszer, ez neked 360USD lenne
Mivel nap mint nap kuldenek kulonbozo tarsasagok feltehetoen 10 ezres nagysagrandu levelhalmazt napi hirlevelkent, en is orulnek, ha olyanok, akik elesben dolgoznak/dolgoztak ilyen vonalon adnank iranymutatast.
RE
Köszi a segítséget.