主機無支援phpmail(),該如何使用smtp來程式發信

您好:

目前phpmail() 函數因是透過程式直接寄信出去,收件端的mail server無法反向驗證到寄信的主機,
故信件常阻擋或歸為垃圾信件的問題,而導致收者常會有收不到信件的問題。

且國際上對於垃圾信件的問題特別看重,故許多主機商已拒絕使用phpmail() 寄出的信件;
進而也關閉主機上phpmail()的使用了。

故提供給客戶使用smtp的方式來寄信:

1.概念:smtp是直接"使用大朵科技主機上的mail server"來寄信(不能使用外部的mail server發信,如gmail、hinet...等);故跟您的目前mx的指向沒有關聯。

2.步驟:
   ①至cpanel→帳戶 (新增一個mail帳號)
   ②在您的smtp程式裡;
      host輸入:localhost
      帳號:剛才在cpanel 新增的mail帳號(如:service@bigcloud.com.tw)
      密碼:剛才在cpanel新增mail帳號時,設定的密碼。

   ※若您是使用wordpress、joomla,也可以將寄信,由phpmail→改成smtp

3.若您無smtp發信的程式;也提供給您phpmailer的教學(不適用6.0以上版本):
   ①下載phpmailer:https://github.com/PHPMailer/PHPMailer/releases/ 
      日前通報5.2.20以下版本(不含:5.2.20)有安全疑慮的漏洞,建議使用最新的phpmailer
      也請客戶定期更新phpmailer的版本
   ②解開壓縮檔後;僅需要上傳如下3個檔名(其他不用上傳)-該3個檔案需要放於同一層資料夾:
      .class.phpmailer.php
      .class.pop3.php
      .class.smtp.php
      .PHPMailerAutoload.php
    ③再新增一個檔案(如:send.php)-需要與上述檔案放在"同一層資料夾"
       該檔案裡程式的範例如下:


       
<?php
include("PHPMailerAutoload.php");
// 產生 Mailer 實體
$mail = new PHPMailer();

// 設定為 SMTP 方式寄信
$mail->IsSMTP();

// SMTP 伺服器的設定,以及驗證資訊
$mail->SMTPAuth = true;      
$mail->Host = "***.com.tw"; //請填您有指過到大朵主機的網址名稱
$mail->Port = 25; //大朵主機的郵件伺服器port為 25 
$mail->SMTPAuth = false;
$mail->SMTPSecure = false;

// 信件內容的編碼方式
$mail->CharSet = "utf-8";

// 信件處理的編碼方式
$mail->Encoding = "base64";

// SMTP 驗證的使用者資訊
$mail->Username = "abc@abc.com"; //在cpanel新增mail的帳號(需要完整的mail帳號,含@後都要填寫)
$mail->Password = "*****"; //在cpanel新增mail帳號時設定的密碼,請小心是否有空格,空格也算一碼。

// 信件內容設定
$mail->From = "abc@abc.com"; //需要與上述的使用者資訊相同mail
$mail->FromName = "XXXX"; //此顯示寄件者名稱
$mail->Subject = "PHPMailer寄信測試標題"; //信件主旨
$mail->Body = "這是一封測是信件哦!"; //信件內容
$mail->IsHTML(true);

// 收件人
$mail->AddAddress("XXX@AAA.com", "XXX系統通知信"); //此為收件者的電子信箱及顯示名稱

// 顯示訊息
if(!$mail->Send()) {
echo "Mail error: " . $mail->ErrorInfo;
}else {
echo "Mail sent";
}
?>



若您是使用wordpress、joomla和drupal 之類的免費軟體,把以上SMTP資訊輸入網站後台管理表單的地方即可(詳細如何設定請洽軟體商)

如您一定要用php mail(),您可以到CPANEL下的select php version 去把PHP改成"非"預設版本即可

  • 2 Users Found This Useful
這篇文章有幫助嗎?

Related Articles

主機掛了嗎? 別擔心,請先看這

您好如果您覺得您網站的主機掛了,請您先請外地朋友試試看,確認看看是不是我們主機問題,99%的機率都是您自己的ADSL的IP被阻擋而已阻擋的原因可能是您有多次"密碼"...

PHP支援的模組列表和客製化php.ini

大朵的虛擬主機因為有裝設cloudlinux和cagefs,可以提供超完善和有彈性的PHP模組選擇,且客戶可以任選,自行在虛擬主機下的CPANEL控制台點一點就可以裝設了!連一般超好用但是主機商...

虛擬主機使用中華電信線路的好處

您好這個應該不用多作置喙,中華電信有台灣最高的線路普及率,甚至很多電信業者連自己的網路線路覆蓋率都超低,低到都直接跟中華轉租然後轉賣,但也因為是轉賣,難免會出現雍塞,所以在台灣,使用中華電信的線...

主機空間的安全設定三寶! Cloudlinux, Cagefs和Kernelcare

您好我們的主機搭配有最新版的cloudlinux...

大朵科技的伺服器的詳細規格和頻寬為?

您會好奇我們的主機規格,以下是我們最低階的伺服器,也是拿來放客戶網站空間的虛擬主機喔DELL R710雙 Intel L640 共12核心 (也就是外界常號稱的24CPU,因為加上HT)32G...