phpmailer在服務器上不能正常發(fā)送郵件的解決辦法
phpmailer本身是一個很不錯的開源郵件類,也非常的易用簡單,就是偶爾會出現(xiàn)程序上傳到服務器上不能發(fā)送郵件的情況,在之前也有同學問過我這個問題,當時的時候總是不以為然,今天終于讓我碰上了,用phpmailer 在本地測試正常,上傳到服務器上就不行了,當然了是用的SMTP方式,最終確定是fsockopen 函數(shù)惹的禍,因為安全原因fsockopen 和pfsockopen 經(jīng)常被服務器端關(guān)閉。解決方法如下:
而代之的應該是 stream_socket_client()函數(shù),不過他的參數(shù)有一點不一樣。
應這樣更改phpmailer 的 class.stmp.php文件:
$this->smtp_conn = @fsockopen( $host, // the host of the server $port, // the port to use $errno, // error number if any $errstr, // error message if any $tval); // give up after ? secs
改為
$this->smtp_conn = @stream_socket_client( $host.':'.$port, // the host of the server $errno, // error number if any $errstr, // error message if any $tval); // give up after ? secs
這里 PHP版本應高于 5.0 的,因為較早版本沒有stream_socket_client()函數(shù)的。
OK ,問題解決了。
- PHPMailer使用教程(PHPMailer發(fā)送郵件實例分析)
- PHPMailer郵件類利用smtp.163.com發(fā)送郵件方法
- phpmailer簡單發(fā)送郵件的方法(附phpmailer源碼下載)
- 使用php發(fā)送有附件的電子郵件-(PHPMailer使用的實例分析)
- Linux服務器下PHPMailer發(fā)送郵件失敗的問題解決
- PHPMailer郵件發(fā)送的實現(xiàn)代碼
- PHPMailer發(fā)送HTML內(nèi)容、帶附件的郵件實例
- 163的郵件用phpmailer發(fā)送(實例詳解)
- PHP使用PHPMailer發(fā)送郵件的簡單使用方法
- php5.5使用PHPMailer-5.2發(fā)送郵件的完整步驟
相關(guān)文章
PHP中使用數(shù)組指針函數(shù)操作數(shù)組示例
這篇文章主要介紹了PHP中使用數(shù)組指針函數(shù)操作數(shù)組示例,本文講解了current()、key()、next()、prev()、end()、reset()等數(shù)組指針函數(shù),需要的朋友可以參考下2014-11-11