Proč nechodí e-maily z kontaktního formuláře na webu a jak to opravit
Formulář poděkuje, ale zpráva nedorazí nebo skončí ve spamu. Jak to otestovat, proč se to děje a jak odesílání přes SMTP nastavit správně.
3 minuty čtení 3 kroky
Obsah návodu
Nejnepříjemnější chyba na webu je ta, které si nikdo nevšimne. Kontaktní formulář poděkuje, zákazník odejde spokojený a vy si myslíte, že vám lidé nepíšou. Poptávky přitom odcházejí do prázdna nebo do spamové složky. Stejný problém mívají objednávky z e-shopu, potvrzení registrace nebo odkaz pro obnovu hesla. Návod platí pro WordPress i jiné systémy.
Nejdřív si to otestujte
- Pošlete si přes formulář zkušební zprávu na dvě různé adresy: jednu na Gmailu nebo Seznamu a jednu firemní.
- Počkejte pět minut a podívejte se do doručené pošty i do složky s nevyžádanou poštou.
- Vyhodnoťte: zpráva dorazila – formulář funguje, problém je jinde (třeba filtr v poštovním programu); zpráva je ve spamu – web odesílá, ale příjemci mu nevěří; zpráva nedorazila vůbec – web neodesílá, nebo poštovní server příjemce zprávu odmítá.
Proč to nechodí
- Web posílá poštu „sám ze sebe“ funkcí serveru bez přihlášení. Velké poštovní služby dnes takové zprávy odmítají nebo zahazují, pokud doména nemá v pořádku SPF, DKIM a DMARC.
- Odesílatel není na vaší doméně. Formulář posílá zprávu například z adresy zákazníka, který jej vyplnil. Pošta z cizí adresy je přesně to, proti čemu filtry bojují.
- Vyčerpaný denní limit. Ze skriptů PHP lze odeslat jen omezený počet zpráv za den podle tarifu, viz Jaké jsou limity webhostingu. Když web rozesílá i notifikace nebo newsletter, limit se vyčerpá a formulář mlčí.
- Špatně nastavený plugin. Zadaný neexistující SMTP server, chybné heslo nebo port bez šifrování.
Jak to opravit
1. Posílejte přes skutečnou schránku (SMTP)
Založte si schránku, například web@vasedomena.cz (Jak vytvořit emailové schránky), a nastavte web tak, aby posílal přes ni s přihlášením:
| Položka | Hodnota |
|---|---|
| SMTP server | mail.datahost.cz |
| Port a šifrování | 465, SSL/TLS |
| Ověření | ano, jméno = celá adresa schránky, heslo ke schránce |
| Odesílatel (From) | adresa této schránky, ne adresa zákazníka |
| Odpovědět komu (Reply-To) | adresa zákazníka z formuláře |
Ve WordPressu postupujte podle Jak nastavit plugin Easy WP SMTP ve WordPressu, v PrestaShopu podle Jak nakonfigurovat SMTP v PrestaShopu. Ostatní systémy mají nastavení SMTP obvykle v sekci E-mail nebo Odesílání pošty.
2. Zkontrolujte SPF, DKIM a DMARC u domény
Pokud doména směřuje na DNS servery Datahostu, jsou záznamy nastavené. Pokud si DNS spravujete jinde, doplňte je podle SPF, DKIM a DMARC srozumitelně. Ověření je jednoduché: pošlete si zprávu na Gmail, otevřete ji, zvolte „Zobrazit originál“ a v hlavičce hledejte SPF: PASS, DKIM: PASS a DMARC: PASS. Jak hlavičky zobrazit v jiných programech, popisuje Jak zkontrolovat hlavičky emailu.
3. Nechte si zprávy ukládat i do webu
Většina formulářových doplňků umí uložit každé odeslání do administrace nezávisle na e-mailu. Zapněte to. O poptávky pak nepřijdete, ani když pošta selže. Přidejte si také druhého příjemce, třeba soukromou adresu, dokud problém neodladíte.
Kdy kontaktovat podporu
- SMTP je nastavené, hlavičky ukazují PASS, a zprávy stejně nechodí – napište na podpora@datahost.cz název domény, adresu odesílatele a příjemce a přesný čas zkušební zprávy. Dohledáme ji v logu serveru.
- Potřebujete vyšší denní limit odeslaných zpráv – uveďte, kolik zpráv a proč web odesílá.
- Z webu odchází spam bez vašeho vědomí – jde o napadený web, viz Co dělat, když byl WordPress napaden. Nastavení pošty se řeší až po úklidu.
Zkontrolujte, zda formulář posílá potvrzení i zákazníkovi. Když ne, neví, jestli zpráva odešla, a napíše znovu nebo jde ke konkurenci.