Heim > Artikel > Backend-Entwicklung > Wie kann ich E-Mails versenden, ohne einen SMTP-Server zu verwenden?
So senden Sie E-Mails ohne SMTP-Server
Während die meisten E-Mail-Übertragungen einen SMTP-Server erfordern, gibt es eine alternative Methode, um zu vermeiden, dass Dritte Einschränkungen des Partyservers.
Delegieren an externe Programme
Die einzige Möglichkeit, E-Mails ohne direkte SMTP-Kommunikation zu versenden, besteht darin, die Aufgabe einem anderen Programm zu übertragen. Dieses Programm kann eine Reihe von Optionen haben, aber POSIX-Systeme verwenden oft die Binärdatei /usr/sbin/sendmail oder /usr/bin/sendmail.
Sendmail mit /usr/sbin/sendmail aufrufen
Der Aufruf dieses Programms mit der Befehlszeilenoption -t ermöglicht es ihm, Empfängeradressen aus den E-Mail-Headern zu lesen. Sie können os/exec, net/mail und net/textproto verwenden, um die Rohrleitungen und den Text zu bearbeiten.
Verwendung der Gomail-Bibliothek
Alternativ bietet die Gomail-Bibliothek eine vereinfachte Schnittstelle zum Senden von E-Mails über Sendmail. Sein Nachrichtentyp bietet die Methode WriteTo(), die eine E-Mail-Nachricht mit der laufenden Sendmail-Instanz verbindet.
Vorteile der Verwendung eines MTA
Obwohl an ein externes Programm delegiert wird Ist dies sinnvoll, bietet die Verwendung eines vollwertigen Mail Transfer Agent (MTA) wie Sendmail den Vorteil der E-Mail-Warteschlange. Ein MTA kann E-Mails vorübergehend zurückhalten, wenn eine sofortige Zustellung nicht möglich ist, und kontinuierlich versuchen, sie zu senden, bis dies gelingt oder eine erhebliche Zeitüberschreitung abläuft.
Das obige ist der detaillierte Inhalt vonWie kann ich E-Mails versenden, ohne einen SMTP-Server zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!