本文章來給各位同學介紹一下PHP用mail或pear mail發送郵件(window/linux),有需要了解學習的同學可進入參考哈
一 、windows sendmail
http://glob.com.au/sendmail/
二、windows smtp 服務器
http://msdn.microsoft.com/zh-cn/library/8b83ac7t(v=vs.80).aspx
解決 WIN7 SMTP 安裝問題,有人說WIN7系統沒有SMTP服務 怎么可能呢,具體安裝步驟如下:控制面板/程序>打開和關閉Windows功能,Internet信息服務 將 萬維網服務>應用程序開發功能>.NET擴展性 勾上 安裝 就可以了.
php mail()函數在windows不能用
php mail()函數在windows不能用,需要安裝sendmail。Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in
1.從http://glob.com.au/sendmail/下載sendmail.zip
2.解壓到C:下,例如C:/PHP/sendmail,最好短路徑,長路徑名有可能產生問題。
3.修改php.ini如下
sendmail_path = "C:/PHP/sendmail/sendmail.exe -t"
4.根據你自己的配置環境修改sendmail.ini。
第一次最好啟用debug.log_file,error_logfile,以查看sendmail是否生效。
5.重啟apache
用sendmail結合其它的smtp服務器,如smtp.airmb.com來實現發郵件。現在大部分郵箱都要求smtp驗證,所以要在sendmail.ini中加入用戶名和密碼。
php.ini配置 (以用airmb.com郵箱為例)
就配置三項,smtp、smtp_port和sendmail_path
sendmail.ini配置
同時在虛擬主機的conf里加上這樣一句
php_admin_value sendmail_path 'C:/PHP/sendmail/sendmail.exe -t facai@airmb.com'
此郵件地址為用戶的郵件地址,隨便添。
注意,經測試,結果如下 : 發送成功 ,表示已發到郵件服務器隊列!但郵件服務器沒有啟動!
運行: service sendmail start
另外 ,已發送成功的郵件,sendmail服務器會一直保存 ! 啟動郵件服務器后 ,所有未發送的都會發送.