6g下載網
當前位置: 主頁 > 軟件教程 > 計算機軟件 >

發送郵件時提示“您的主機禁用了mail()函數”怎么辦?

時間: 2016-10-08 13:08 來源: 本站整理

分享到:

小伙伴們在發送電子郵件時有沒有遇到這種情況?提示:您的主機禁用了mail()函數。從而導致電子郵件未能發送。如果遇到這種情況請繼續看下面內容,或許可以幫到你。

出現這種情況說明主機不支持郵件收發功能。

發送郵件時提示“您的主機禁用了mail()函數”怎么辦?

WordPress無法發送郵件的解決方法:

對應普通虛擬主機來說,要開啟 fsockopen(一般是在主機商提供的管理后臺中可以開啟,不會的請聯系主機商客服) 。

1. 在網站的 /wp-Includes/ 目錄下找到并打開 class-smtp.php 大概是 274-282 行的位置(不同版本WordPress可能行數不同),找到如下代碼:

$this->smtp_conn = @stream_socket_client(
$host . ":" . $port,
$errno,
$errstr,
$timeout,
STREAM_CLIENT_CONNECT,
$socket_context
);

將此代碼注釋掉或者刪除,然后修改為以下代碼:

 $this->smtp_conn = fsockopen($host, $port, $errno, $errstr);

修改后,如果還是無法發送郵件,在上面步驟完成的情況下繼續添加如下代碼:

/**
* 修復 WordPress 郵件發送”
* 以QQ郵箱為例**/
function mail_smtp( $phpmailer ){
$phpmailer->From = "[email protected]"; //發件人
$phpmailer->FromName = "技術宅"; //發件人昵稱
$phpmailer->Host = "smtp.qq.com"; //SMTP服務器地址
$phpmailer->Port = 25; //SMTP端口,常用的有25、465、587,具體谷歌百度
$phpmailer->SMTPSecure = ""; //SMTP加密方式,常用的有SSL/TLS,具體谷歌百度
$phpmailer->Username = "[email protected]"; //郵箱帳號
$phpmailer->Password = *********; //郵箱密碼
$phpmailer->IsSMTP(); //使用SMTP發送
$phpmailer->SMTPAuth = true; //啟用SMTPAuth服務
}
add_action('phpmailer_init','mail_smtp');

執行以上操作后您網站的郵件收發功能應該就可以實現了。如果還是沒法解決,這可能就是只修改代碼無法解決了,請聯系主機商解決處理吧。

以上就是關于發郵件時提示“您的主機禁用了mail()函數”而使得電子郵件未能發送的解決辦法,希望對大家有幫助!
 

(責任編輯:德瑞克)

分享到:

------分隔線----------------------------
? 35选7福利彩票