mail versturen via xampp
Kan iemand me vertellen wat ik moet doen om het te laten werken?
Martijn
Je kunt dit o.a. oplossen door:
1. de SMTP-server van XAMPP in te stellen op die van jouw ISP
2. te communiceren met een andere mailserver zoals die van GMail, waarbij je bijvoorbeeld gebruik maakt van een library als PHPMailer
Hierbij lijkt het mij wel heel verstandig om een soort van test modus in te programmeren, zodat bijvoorbeeld alle mail naar een test e-mailadres gaat. Het komt namelijk geregeld voor dat mensen een snapshot van een live database terughalen en dan een mailtest uitvoeren waarbij bestaande e-mailadressen van klanten en zakelijke contacten per ongeluk worden gebruikt... Oeps. Dat staat nogal onprofessioneel, dus zorg dat is voorzien in zo'n test modus in het ontwerp van je mailfunctionaliteit.
Programmeer hiertoe bijvoorbeeld een wrapper(functie) die intern bepaalt -bijvoorbeeld op grond van configuratievariabelen- wat er precies met de mail moet gebeuren. Zorg vervolgens dat alle mail-aanroepen via deze wrapper plaatsvinden, zodat al het mailverkeer vanuit je applicatie door hetzelfde poortje gaat.
Gewijzigd op 29/10/2018 17:02:04 door Thomas van den Heuvel
De eerste ingeving bij dit het verhaal: staan poort 25 & 26 open? Dit omdat er iets van een xampp staat, is een niet - standaard hosting opzet. Sommige providers hebben/houden deez poorten standaard gesloten wegens spam.
Waarom zou je poort 26 open zetten? Die poort wordt niet voor mail gebruikt. Maar zelfs dan nog, om mail te versturen hoef je zelf niets open te zetten. Afhankelijk van je ISP is 25 naar buiten gesloten though.
Ben van Velzen op 29/10/2018 21:33:35:
Waarom zou je poort 26 open zetten? Die poort wordt niet voor mail gebruikt. Maar zelfs dan nog, om mail te versturen hoef je zelf niets open te zetten. Afhankelijk van je ISP is 25 naar buiten gesloten though.
Poort 25 is standaard verzenden & poort 26 ontvangen van mail onder het smtp-protocol, als 25 geblokkeerd is heeft het geen nut om op poort 26 op een reactie van voorafgaande te wachten, toch?
Gewijzigd op 29/10/2018 22:00:15 door Ben van Velzen
https://drive.google.com/open?id=1jy4M6Be7HUxjhYpgE55qpbY3bdz0BocN
Er is een probleem met de MX record volgens de diagnostics.
Ik heb hier nog niet zo veel kaas van gegeten maar kan het zijn dat ik die MX record mis en daardoor die mail () functie niet werkt?
Martijn
Gewijzigd op 29/10/2018 22:02:30 door Martijn Horst
Het lijkt mij een stuk makkelijker dat je -als je lokaal een XAMPP servertje hebt draaien- tot op zekere hoogte het een en ander simuleert, waarbij je gebruik maakt van bestaande (online) mailservers. Dit staat ook het dichtste bij de praktijk, omdat je daadwerkelijk via het internet mail verstuurt.
Houd het gewoon simpel. De simpelste manier is gewoon de SMTP-server van je provider instellen. Raadpleeg een FAQ van je provider hoe je deze voor een mailprogramma in zou moeten stellen. Dit doe je dan in je XAMPP configuratie. Herstarten. Klaar. Simpel.
EDIT: ik denk ook niet dat het uitmaakt dat de MX-records niet werken, als je dit toch alleen maar lokaal gebruikt. Kijk anders eens hoe je die mailserver enkel voor lokaal gebruik instelt. Al lijkt mij dat nog steeds een hoop extra werk met weinig extra meerwaarde.
Gewijzigd op 29/10/2018 22:13:22 door Thomas van den Heuvel
Gewijzigd op 29/10/2018 22:24:30 door Martijn Horst
Maar het is wel natuurgetrouwer (gaat uiteindelijk toch over het internet), eenvoudiger (geen extra applicaties nodig) en geeft mogelijk ook extra informatie qua mailopbouw (spamindex) aan de ontvangende kant.
https://github.com/PHPMailer/PHPMailer en Als je composer gebruikt kun je het gewoon installeren met composer require phpmailer/phpmailer
Gebruik al jaren de smtp server van mijn internetprovider. Werkt als een trein.
Ik zou gaan voor optie 2 van Thomas. Hier vindt je de bestanden. Gebruik al jaren de smtp server van mijn internetprovider. Werkt als een trein.
Oke bedankt voor de hulp. Stel dat ik de 'website' nu online heb staan bij een webhoster + domeinnaam kan ik dan de problemen die ik nu heb ook online verwachten? Ik bedoel dat dan die php mail functie of die PHPmailer ook niet werkt? Helaas kan ik dit nog niet testen omdat ik nog geen hosting heb.
Het is net andersom als dat je nu denkt. Met PHPMailer kun je zowel de interne PHP mail functie gebruiken als een SMTP server. Het is slechts even de instellingen aanpassen. Te meer omdat er steeds meer providers zijn die de interne PHP mail functie uitschakelen is het direct toepassen van een library als PHPMailer of Swiftmailer een goed idee.
Ze moeten de afhandeling gewoon goed aanpakken.
Yoop Overmaat op 29/10/2018 21:57:30:
Poort 25 is standaard verzenden & poort 26 ontvangen van mail onder het smtp-protocol, als 25 geblokkeerd is heeft het geen nut om op poort 26 op een reactie van voorafgaande te wachten, toch?
Ben van Velzen op 29/10/2018 21:33:35:
Waarom zou je poort 26 open zetten? Die poort wordt niet voor mail gebruikt. Maar zelfs dan nog, om mail te versturen hoef je zelf niets open te zetten. Afhankelijk van je ISP is 25 naar buiten gesloten though.
Poort 25 is standaard verzenden & poort 26 ontvangen van mail onder het smtp-protocol, als 25 geblokkeerd is heeft het geen nut om op poort 26 op een reactie van voorafgaande te wachten, toch?
Correct, ik was abuis.