Sziasztok!
Ubercart webáruházat kezdtem szerveren tesztelni, próbavásárlásokkal. A kimenő emailek tartalmának beállítása volt a célom, meg egyáltalán a folyamat megfigyelése (ezen a téren nincs tapasztalatom).
Néhány kísérlet után a szolgáltató letiltotta a kimenő (PHP mail függvény általi) emailjeimet, mondván: "jelentős mennyiségű SPAM levél került kiküldésre a tárhelyén üzemeltetett program által". Kevésbé lényeges, hogy a "jelentős mennyiség" 20 alatti emailt jelent, és a tiltást azóta megszüntették, de azt mondják, ebben a formában nem fognak kimenni a levelek - használjak levelező kliens programot.
Keresgéltem, de nem igazán találtam erre a problémára modul megoldást.
A másik oldalon, a "még sikeresen" kiment emailek egyes email fiókokban (pl. gmail) a spamek közé kerültek...tehát a spamszűrőknek nem tetszik az alapjáraton kimenő email.
Mit tanácsoltok a probléma orvoslására?
Köszönettel:
Ducsai Zoltán
Szívlapát
Szívlapát a szolgáltatónak (ha tényleg csak ennyi levél volt), neked pedig SMTP modul.
Választ szeretnél? - Új kérdés, új téma - Tesztoldal - Trollkezelés - Frissítés
SMTP Authentication Support első körben
Tényleg furcsa, hogy ennyi után spamnek minősítették a leveleidet. Nem tartalmaznak a kimenő levelek (esetleg módosítottad a kiküldendő szöveget, stb.) olyan szöveget, amik spam-gyanúsak? (bizonyos szavakra érzékenyek a levelező kliensek, erre van a szűrőjük, az persze nem minden esetben szűr az elvárásaink szerint)
Az is lehet, hogy valamiért a szolgáltatód küld olyan headereket, amik nem tetszenek a levelezőprogramoknak, így hirtelen nehéz kitalálni, komolyabban meg kéne ezeket is vizsgálni.
Addig is én első körben azzal próbálkoznék, hogy használnám az SMTP Authentication Support modult, amely a PHPMailer osztályt használja levélküldésre, és beállítanék egy SSL-titkosítással működő accountot, így azon az azonosítón keresztül fogja küldözgetni a leveleket, nem a szolgáltatód által alapértelmezettként biztosított beállításokat használva. Ilyenre alkalmas lehet akár egy Gmail-fiók is (ehhez itt vannak a megfelelő adatok).
=======
SZERK.: na, addig dumáltam, míg megelőztek. :D
így sincs kimenő email
Köszönöm a gyors válaszotokat! Beüzemeltem az SMTP modult...némi tanácstalanság után, hogy az SMTP kiszolgáló mi lehet, majd kis bogarászás után ezeket állítottam be:
SMTP kiszolgáló : smtp.gmail.com
SMTP port : 465
Use encrypted protocol : SSL használata
Az SMTP azonosítást nem töltöttem ki (de aztán kitöltve is próbálkoztam)
Email feladó címet, nevet megadtam.
Teszt-emailcímet megadtam + Enable debugging
Többszöri kísérletre sem megy ki email:
SMTP Error: Could not connect to SMTP host
illetve
Hiba történt az e-mail küldése során x címről y címre
üzeneteket kapok.
Szerintetek nálam van a hiba?
nem nálam van
Telepítettem a phpmailer modult is , meg hozzá a leírásban szereplő libraries foldert. Elvileg minden működőképes, a drupal elküldi az emailt, de nem megy ki.
A phpmailer redme.txt-ben a hibaüzenet leírása:
If you see the following error messages when trying to send a test email from
the settings page:
SMTP -> ERROR: Failed to connect to server: Connection timed out (110)
SMTP Error: Could not connect to SMTP host.
it means the mail server can not be reached, usually because your hosting provider is blocking the port by a firewall. The solution is to ask your provider to allow outgoing connections to your mail server.
Szóval nem nálam van gubanc, hanem a szolgáltatónál.
Lehet,hogy nincs engedélyezve a szolgáltatónál a php_openssl.dll
Ha jól értem, Gmaillel próbálkoztál, beállítottál helyes felhasználónevet-jelszót, küldtél tesztcélú e-mailt, stb., tehát mindenféle szükséges lépést megtettél.
Ez esetben tudsz egy phpinfo()-t mellékelni, már ha a szolgáltatód nem tiltja annak is a használatát?
Ez azért lenne érdekes, mert lehet, hogy a szolgáltató nem engedélyezte a
php_openssl.dll
bővítményt (pl. itt is az volt a hiba).Ezért szintén a nevergone által már korábban javasolt szívlapát-kezelés járna nekik... :)
De hogy erről meggyőződjünk, utána kéne nézni. Ha a Devel modul engedélyezve van nálad, akkor könnyű kiíratni a phpinfo()-t. Ha engedélyezve van az OpenSSL, akkor egy ilyen szekciónak kellene lennie a phpinfo()-ban:
Ami még nagyon fontos:
NEM kell az "SMTP Authentication Support" modulhoz külön letöltögetni, telepítgetni a PHPMailer osztályt!! Idézem a modul oldaláról, ahol egyértelműen írják: "PHPMailer is now being shipped with it, so it works out-of-the-box".
phpinfo()
Szia!
Köszönöm a leírtakat! A Devel modult még sohasem használtam, de a napokban telepítettem. Sok mindent nem tudok kezdeni a kiírt információkkal, de sikerült a phpinfo()-t kiíratni.
OpenSSL support - enabled.
Közben sikerült az openssl használatával localhostról elküldeni a teszt-emaileket, ugyanezekkel a beállításokkal viszont a szerverről nem mennek ki.
Arra a próbálkozásra, amikor kikapcsoltam a PHPMailer modult és töröltem phpmailer library-t, ezt a hibaüzenetet kaptam:
Fatal error: Class 'PHPMailer' not found in .../sites/all/modules/smtp/smtp.mail.inc on line 57
Executed 36 queries in 7.99 ms. Queries exceeding 5 ms are highlighted.
Mivel még csak fejlesztésről van szó egy alkönyvtárban (más probléma is van a szolgáltatónál), azon gondolkodok, hogy máshol fogom beélesíteni.
Melyik szolgáltató?
Szia!
Szívesen!
Ez a class not found hiba elég érdekes, mert ott van a PHPMailer osztály az
smtp.phpmailer.inc
fájlban, ami azsmtp
modul könyvtárában van. Ötletem sincs, miért nem találja nálad. Lehet, hogy valami beállítás miatt máshol keresgéli, most hirtelen nem értem.A szolgáltatónál valóban igen érdekes hibák vannak.
Mindenképpen válts, ha már az elején ilyen problémák vannak, ki tudja, mi derül még ki.
Melyik szolgáltatóról van szó egyébként?
Ha már így rákérdeztél
Ha már így rákérdeztél (és adott kontextusban inkább antireklámnak minősül) - a Dataglobe szerveréről van szó. Nem közvetlenül tőlük bérlem a tárhelyet, hanem egy rendszergazda ismerősömön keresztül (aki sok oldalt működtet, inkább a Joomlát preferálja, és a tárhelyei erre van konfigurálva, pl.:PHP register globals - bekapcsolva).
Viszont az aktuális problémát a Dataglobe spamszűrő beállításai okozzák, ezért nevesítettem.
Ugyanakkor van itt két másik Drupalos oldalam, amik gond nélkül, megfelelő módon működnek (igaz, kimenő emaileket ezeken eddig nem akartam küldeni)
Dataglobe? Menekülj!!
Dataglobe? Már a névtől is kiráz a hideg. Valahogy nem lep meg, hogy épp náluk fordulnak elő ezek a degenerált hibák. Előző munkahelyemen több domain és tárhely is náluk volt, és össze sem tudnám számolni, mennyi elképesztő idegesítő, egetverő hiba fordult elő náluk, hányszor volt probléma az elérhetőséggel, az FTP-szerverrel, a MySQL-szerverrel, PHP-s beállításokkal, stb... Ezenkívül egy nyomorult tanúsítvány beszerzése sem ment náluk. Természetesen az összes domaint, tárhelyet átvittük végül másik szolgáltatóhoz.
Nem tudom, kik lehetnek ott a rendszergazdák, milyen tudással kerültek oda, de hogy nem értenek a dolgukhoz, az biztos.
Egyébként elég, ha csak rákeresel Google-ben, hogy mennyi őket szidalmazó fórum született.
Én azt javaslom, hogy lehetőleg minél előbb szabadulj meg tőlük, és minden adatodat költöztesd át valami normális és megbízható szolgáltatóhoz.
Köszönöm
Köszönöm, hogy mindezt megosztottad. A webáruházat most mindenképpen máshol fogom beüzemelni, mert kimenő emailek nélkül elég érdekes lenne a működése :)
Szívesen
Szívesen, örülök, ha még időben sikerült megelőzni pár kellemetlenséget.
Örüljnenek a daraglobe
Örüljnenek a daraglobe ügyfelek, hogy egyáltalán megy az oldaluk, pl. több száz olyan oldal van most is amelyek már 2 napja nem érhetőek el a dataglobe szerverein. Gondolom, majd hétfőn felébrendnek náluk, gyorsan javítanak, aztán hazudnak valamit az ügyfeleknek! :-)
A "szpem szűrőjük" meg egy nagy fos! :-) Mindent blokkol, főleg a jó leveleket!
emailek tartalma
Péter, hogy a kérdéseidre is válaszoljak: a kimenő levelek tartalmát csak annyiban változtattam, hogy tokenekkel próbáltam beállítani az emailben megjelenítendő adatokat...semmi spamgyanús szöveget nem tettem be...a default után 1-2 apró lépést módosítottam.
De elsősorban azt akartam elérni, hogy a Store>Beállítások>Checkout>Szabályok>E-mail admin checkout notification részben sikerül-e az emailküldést 2 különböző címre beállítani úgy, hogy az egyik egy token [node:author:mail]. Ugyanis több felhasználó működtetné a webáruházat, közös árukészlettel. (Nézegettem az Ubercart Marketplace modult, de nem igazán arra van szükségem).
Az SMTP-vel tovább kísérletezek...
phpmailer
Én is sokat küzdöttem már az email kiküldés problémájával, kezdve a kódlapokkal, stb... javaslom az UTF8-at.
Jelenleg a phpmailert tartom a legjobb megoldásnak, ez Drupálból és sima php oldalaimról is szépen kiküldi az emaileket. Én nem is telepítettem a phpmailer modult, hanem sima php-ből használom, a saját modulomból. Ez a kódom:
Köszönöm
Köszönöm a segítséget, ezt ki fogom próbálni!
Hasonlót csinál az SMTP modul
Az SMTP modul is a PHPMailert használja, ahogy korábban is szó volt róla, csak mindezt kényelmes felületen lehet állítgatni. :)
Azt nem tisztáztad, hogyan érje el, hogy ez legyen a default e-mail-küldő, pl. a webshop levelei defaultként ezzel menjenek ki, stb...
Szerintem maradjon csak az SMTP modulnál, és költözzön át másik szolgáltatóhoz, mert annak működnie kell. Tapasztalat. :)