本文目錄一覽:
如何配置PHP.ini 中 sendmail
PHP.ini的配置。
[mail function]
; For Win32 only.
; SMTP = localhost
; smtp_port = 25
; For Win32 only.
; sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: “sendmail -t -i”).
sendmail_path = “D:\PHP5\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.exe的路徑,就是上面看到的,‘-t’寫上就好,不用管。
接着是sendmail的配置
smtp_server=smtp服務器地址
auth_username=郵箱登錄名
auth_password=郵箱密碼
force_sender=發件人地址全寫
這裡由於沒有自己的STMP服務器,就得用別人的,經測試可以用QQ和163的。例如QQ的smtp_server地址為:smtp.qq.com。auth_username就是登陸名,如果用QQ的就是QQ號碼。auth_password郵箱密碼。force_sender這是其實可以不填。
下面是測試用的PHP代碼:
?php
$to = “123@qq.com”;
$now = date(“Y-m-d h:i:s”);
$from_name = ‘測試者’;
$from_email = ‘Kensy’;
$headers = “From: $from_name $from_email”;
$body = “測試郵件!”;
$subject = “[$now] 測試郵件”;
if (mail($to, $subject, $body, $headers)) {
echo “success!”;
} else {
echo “fail…”;
}
?
如何配置php.ini發送郵件
我的環境:XAMPP v3.2.1
準備工作
1.檢查有沒有sendmail程序,在xampp安裝目錄下的sendmail文件夾下。沒有則下載sendmail.zip(),然後解壓並放在在xampp目錄下。
2.去mail.google.com註冊一個google的郵箱,比如賬號:user@gmail.com,密碼:passwd
配置步驟:
1.PHP.ini中如下設置:
; SMTP = localhost;
smtp_port = 25;
sendmail_from = sendmail_path = “C:/xampp/sendmail/sendmail.exe -t”
也就是注釋掉”SMTP”、”smtp_port”、”sendmail_from”,設置sendmail_path變量的值為以上所示(根據自己電腦上sendmail.exe的目錄自行設置)。
2.sendmail.ini中如下設置
smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=TLS
error_logfile=error.log
debug_logfile=debug.log
auth_username=user@gail.com
auth_password=passwd
測試代碼:
[php] view plain copy print?
?php
$now = date(“Y-m-d h:i:s”);
$headers = ‘From: namesender@qq.com’;
$body = “hi, this is a test mail.\nMy email: sender@qq.com”;
$subject = “test mail”;
$to = “recver@qq.com”;
if (mail($to, $subject, $body, $headers))
{
echo ‘success!’;
}
else
{
echo ‘fail’;
}
?
以上代碼執行後recver@qq.com 會收到發過來的郵件,但是郵件頭中的sender@qq.com會被替換成user@gmail.com。
如何在Windows系統配置sendmail使用PHP的mail函數
在Windows系統配置sendmail使用PHP的mail函數的方法:
首先需要一個Sendmail組件,XAMPP套件里就有一個。把整個SendMail文件夾拷貝到合適的目錄下,例如”D:/SendMail/”
2. 在php.ini中配置相應的sendmail參數:
[mail function]
; For Win32 only.
SMTP = smtp.163.com (如果同一台服務器上存在SMTP服務器,則可以保留localhost不變,否則,填寫一個比較可靠的smtp服務器地址,例如163,gmail等)
smtp_port = 25 (如果服務器無需驗證,則填寫25端口;或者自架SMTP服務器,為了安全起見 ,另改一個通信端口號;或者使用啟用ssl的smtp服務器,則填寫465端口);
3. 同樣,在sendmail目錄下的sendmail.ini文件里,也要配置相應的參數,如果使用ssl方式的smtp服務器,需要填寫這兩個參數,分別把登錄郵箱的用戶名和密碼設置進去就可以了。
4. 如果需要輸出調試信息,就需要把這兩句前面的分號去掉,error.log里保存報錯信息,debug.log里保存每一條發送記錄。
;error_logfile=error.log
;debug_logfile=debug.log
這樣配置後就可以直接使用PHP自帶的mail()函數來發送郵件了。
sendmail簡介:
sendmail是最重要的郵件傳輸代理程序。理解電子郵件的工作模式是非常重要的。一般情況下,我們把電子郵件程序分解成用戶代理,傳輸代理和投遞代理。用戶代理用來接受用戶的指令,將用戶的信件傳送至信件傳輸代理,如:outlook express、foxmail等。而投遞代理則從信件傳輸代理取得信件傳送至最終用戶的郵箱,如:procmail。
php 發送郵件 要怎麼配置
在Windows平台下使用mail函數發送郵件,記錄如下
php.ini的設置:
SMTP = localhost
smtp_port = 25
sendmail_from=你的設定值
另外,還需要安裝IIS自帶的SMTP,在SMTP虛擬服務器上點擊右鍵,在彈出的屬性窗口裡進行如下設置:
點擊訪問選項卡,再點擊中繼,在彈出的窗口出點擊添加,然後選單台計算機,添加IP地址為 127.0.0.1。然後一路確定返回。(不進行此項設置,可能會出現:SMTP server response: 550 5.7.1 Unable to relay for jxxycc@qq.com。。。的錯誤)
這樣就可以使用mail函數了
?php
mail(“jxxycc@qq.com”,”Test mail function of PHP.”,”hello world!”);
?
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/181486.html