Gmails SMTP-server vs. XAMPP

Dette er endnu et note-to-self-indlæg, som andre måske også kan få glæde af. Jeg har i dag for første gang kigget lidt på XAMPP, og skulle i den forbindelse køre et PHP-mailscript lokalt. Det var ikke nogen udpræget succes, og efter mange timers trial and error, lader det til at virke:

Installér XAMPP og sæt det op med PHP, MySQL og hvad du ellers skal bruge. Åbn php.ini vha. “Config”-knappen, og gå ned til sektionen [mail function]. Under ; For unix only… skrives:

sendmail_path = "\"<INSTALLATION>\sendmail\sendmail.exe\" -t"

– hvor <INSTALLATION> er din XAMPP-installation, f.eks. D:\XAMPP. Derefter åbnes filen \sendmail\sendmail.ini, og her tilføjes følgende under [sendmail]:

smtp_server=smtp.gmail.com
smtp_port=465
error_logfile=error.log
auth_username=<din@gmail.adresse>
auth_password=<din-adgangskode>

Et par linjer længere nede rettes  SMTPS (SSL) support til følgende:

smtp_ssl=ssl

Nu burde det virke… For at afprøve kan du lave et testscript:

<?php
$to = '<modtageradresse>'; // f.eks. mymail@gmail.com
$subject = 'Dette er en testmail'; // fgmsduio
$message = 'Mailen blev sendt!';
$headers = "From: <din@gmail.adresse>\r\n"; // bør være den samme som angivet i sendmail.ini
if (mail($to, $subject, $message, $headers)) {
   echo "SUCCESS";
} else {
   echo "ERROR";
} ?>

Hvis scriptet returnerer ERROR, så kig i \sendmail\error.log. Der vil muligvis stå noget i retning af

17-09-21 22:49:37 : <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbu0<EOL>rlSZCS2ez7E0sfuoonFSeCSSM04bFceH66bTiLIncl7FGXmO2XDlIajIBl-VSqFqOV3rk2<EOL>G0HCav5yTiPw11ssKu-1YGCpJ8SZlQhPXCeTXU6WVSnJoEYLVuur1deUa3YwxtlfBtsPkE<EOL>3lGPuoSL14VOhvPYpHQrJUvlVuEhDu5PO9SXASzxnk7kCHAjvSrJ-Kn0GPX9mm55Joi0Ep<EOL>-dHavPLaiXGaaNMbpPlVlOubdYeis> Please log in via your web browser and<EOL>then try again.<EOL> Learn more at<EOL> https://support.google.com/mail/answer/78754 c185sm358172lfd.67 - gsmtp<EOL>

– og hvis det er tilfældet, så log ind på din Google-konto og gå til menupunktet “Login og sikkerhed”. Grunden til fejlen er tilsyneladende, at mail-funktionen ikke lever helt op til Googles sikkerhedskrav, men det kan afhjælpes ved at scrolle ned i bunden af siden og sætte “Tillad mindre sikre apps” til TIL.

Og NU burde det så virke. Den første mail ryger garanteret i spammappen, da vi sender eksternt fra Gmail, så tjek lige dén også 🙂