Windows下使用php sendmail配置方法
大家非常好奇為什么別人大型公司的論壇注冊后會系統(tǒng)自動發(fā)送一封注冊信息的電子郵件到注冊人的信箱里,而同樣用的是一種內(nèi)核的論壇程序,為什么自己架設(shè)的卻沒有這個功能,今天我來為大家解密這個原因。我們拿PHPBB來舉例,這個論壇內(nèi)核早已經(jīng)寫好了論壇郵件發(fā)送功能,只需要你本地有個SMTP轉(zhuǎn)發(fā)的服務(wù)在就可以,由于大公司服務(wù)器大多數(shù)用的是UNIX或者是LIUNX,因為這些服務(wù)器本身具有本地SMTP服務(wù)的作用,所以可以直接發(fā)注冊信息到注冊人的郵箱里,而我們個人架設(shè)網(wǎng)站大部分都是WINDOWS的平臺,由于ASP論壇非常不安全,而ASPX論壇又不好進(jìn)行開源。
雖然這兩種論壇架構(gòu)非常容易運(yùn)用些IIS的相關(guān)的SMTP服務(wù)器來解決問題,但都先天不足,很多網(wǎng)友都非常喜歡用PHP內(nèi)核的論壇來架設(shè),比如PHPBB、PHPWIND、等這些都是具備論壇發(fā)信功能,但由于PHP先天就是LIUNX的寵愛,所以WINDOWS下支持SMTP的東西不是很多,Windows下使用php sendmail配置方法是否不太可能,但也不是絕路,現(xiàn)在告訴大家如何在WINDOWS平臺下解決php sendmail配置問題
1.修改 x:\xampp\sendmail\sendmail.ini 檔案,修改以下資料:
smtp_server=mail.vhost.tw
auth_username=sendmail@vhost.tw
auth_password=Xca1Bq
2.修改 x:\xampp\apache\bin\php.ini 檔案,修改以下資料:
[mail function]
; For Win32 only.
;smtp_port = 25
; For Win32 only.
;sendmail_from =
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path = "E:\xampp\sendmail\sendmail.exe -t"
3. 重新啟動 Apache,設(shè)定完畢!
4. 測試mail()功能
<'php
$now = date("Y-m-d h:i:s");
$from_name = '測試寄件者';
$from_email =
$headers = 'From: $from_name <$from_email>';
$body = '嗨, \n 這是一封測試信件來自 $from_name <$from_email>.';
$subject = '[$now] 測試信件發(fā)送';
if (mail($to, $subject, $body, $headers)) {
echo "success!";
} else {
echo "fail…";
}
'>
這樣,Windows下使用php sendmail配置就順利完成了!
【編輯推薦】