簡體   English   中英

php mail函數錯誤 - >警告:mail()[function.mail]:SMTP服務器響應:530 5.7.0必須先發出STARTTLS命令

[英]php mail function error -> Warning: mail() [function.mail]: SMTP server response: 530 5.7.0 Must issue a STARTTLS command first

我正在嘗試從php發送電子郵件到Gmail帳戶。 我的筆記本電腦上有以下設置:

  1. Windows 8
  2. 網絡連接
  3. XAMPP 1.7.4,PHP版本5.3.5,

我有以下php.ini設置

[郵件功能]; 僅適用於Win32。 ; http://php.net/smtp SMTP = smtp.gmail.com; http://php.net/smtp-port

smtp_port =:465

; 僅適用於Win32。 ; http://php.net/sendmail-from ; sendmail_from = postmaster @ localhost

; 僅適用於Unix。 您也可以提供參數(默認值:“sendmail -t -i”)。 ; http://php.net/sendmail-path ; sendmail_path =“\\”C:\\ xampp \\ sendmail \\ sendmail.exe \\“ - t”

以下是php代碼:

<?php

$to = 'goodmandiamont@gmail.com';
$subject = 'hi';
$msg = 'Test';
$headers = 'From: postmaster@localhost' ."\r\n" .
            'Reply-To: shawn.danisa@gmail.com' . "\r\n" .
            'X-Mailer: PHP /' . phpversion();
mail($to, $subject,$msg,$headers);

?>

我收到以下錯誤:

警告:mail()[function.mail]:SMTP服務器響應:530 5.7.0必須先發出STARTTLS命令。

我還確保在gmail設置上啟用了IMAP設置。 我還檢查了如果我將在php.ini文件中找到以下行:

的ini_set( “SMTP”, “SSL://smtp.gmail.com”);

的ini_set( “SMTP_PORT”, “465”);

但沒有運氣,我只是無法在任何地方找到它們。 請協助,我是php的新手。

最初,確保您的PHP安裝具有SSL支持(在phpinfo()的輸出中查找“openssl”部分)。

您需要在PHP配置PHP.ini中設置以下設置

ini_set("SMTP","ssl://smtp.gmail.com");
ini_set("smtp_port","465");

希望這能解決你的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM