很多玩discuz的盆友在使用在線發郵件的功能,但是測試了"通過 PHP 函數的 sendmail 發送(推薦此方式)"怎么都沒用,因為本人現在用的是iis+php環境,所以就出這么一個教程,教大家在自己服務器上配置sendmail
首先你需要先到從http://glob.com.au/sendmail/下載sendmail.zip文件,點此可以直接下載噢,然后把它解壓到如D:/php/sendmail/目錄下。
然后打開php.ini文件,找到下面這段代碼
[mail function] ;
For Win32 only.
SMTP = localhost
smtp_port = 25
; For Win32 only.
;sendmail_from = [email protected]
; For Unix only. You may supply arguments as well (default: ”sendmail -t -i”).
; sendmail_path = ”"
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
默認情況下是以本機做為郵件服務器,這里我們需要借用sendmail來發送郵件,用sendmail來配置如用qq、163的郵箱來發送(一般都是以這種方式)所以我們需要把所有的選項都注銷,即把SMTP = localhost和smtp_port = 25前面加上“;”然后把sendmai_path=""前面的“;”刪掉,改為sendmai_path="d:/php/sendmail/sendmail.exe -t",改完后的即是
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = [email protected]
; For Unix only. You may supply arguments as well (default: ”sendmail -t -i”).
sendmail_path = ”d:/php/sendmail/sendmail.exe -t"
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
注意以上只需要開啟sendmail_path即可,然后保存
接著修改sendmail目錄下的sendmail.ini文件,主要填的內容有以下幾項
smtp_server=smtp服務器地址(如 smtp.ym.163.com)
auth_username=郵箱登錄名(如 [email protected])
auth_password=郵箱密碼(如 xxxxxx)
force_sender=發件人地址全寫(如 [email protected])
另外還有一項
; auto = use SSL for port 465, otherwise try to use TLS
把前面的“;”刪除,即開啟SSL安全登錄選項即可
以上四項正確填寫修改完成后保存,然后重啟IIS即可正常使用。
新聞熱點
疑難解答
圖片精選