Heim >Backend-Entwicklung >PHP-Problem >So lösen Sie das PHP-Mail-Fehlerproblem

So lösen Sie das PHP-Mail-Fehlerproblem

藏色散人
藏色散人Original
2021-10-20 11:42:041529Durchsuche

Lösung für PHP-Mail-Fehler: 1. Fügen Sie die lokale IP-Adresse in der Relay-Option des SMTP-Dienstes hinzu. 2. Erstellen Sie eine Portzuordnung auf dem Gateway und ordnen Sie Port 25 dem lokalen Computer zu.

So lösen Sie das PHP-Mail-Fehlerproblem

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie löse ich das PHP-Mail-Fehlerproblem?

php mail() Funktionsfehlerproblem

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>phpinfo</title>
</head>
<body>
<?
$to = "atoat@sina.com";
$subject = "php-Mail";
$msg = "I completely understand SMTP servers now!";
$headers = "From: atoat@163.com/r/nReply-To: atoat@163.com";
mail("$to", "$subject", "$msg", "$headers");
echo "finished!";
?>
</body>
</html>

Fehler:

Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 Unable to relay for atoat@sina.com in C:/webserver/htdocs/www/mail.php on line 14

php.ini-Konfiguration

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25
; For Win32 only.
sendmail_from = atoat@163.com

Hat den mit Windows gelieferten SMTP-Dienst installiert

Nach langer Suche habe ich festgestellt, dass ich ihn verwenden muss der SMTP-Dienst Fügen Sie die lokale IP-Adresse in der Relay-Option hinzu

Virtueller Server->Eigenschaften->Zugriff->Relay

Wählen Sie „Nur die folgende Liste“ => „Einzelner Computer“ => 127.0.0.1 dort hinzufügen ist kein Problem mit der lokalen Adresse

Es gibt kein Problem mit dem Programm, aber die Nachricht wird nicht sofort im Posteingang empfangen

Der Grund, warum ich sie nicht erhalten habe, ist, dass mein Computer im internen Netzwerk ist und nicht senden kann E-Mails an das externe Netzwerk.

Lösung:

Erstellen Sie eine Portzuordnung auf dem Gateway und ordnen Sie Port 25 dem lokalen Computer zu. Oder die Maschine hat eine öffentliche IP.

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo lösen Sie das PHP-Mail-Fehlerproblem. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn