openssl.dll設定問題
若以上方法還不行,建議透過以下方法來使用,
1.下載stunnel,stunnel-5.35-installer.exe (透過它代理ssl連線)
位置在http://www.stunnel.org/downloads.html?extra=/stunnel/win32/stunnel-4.27-installer.exe
2.安裝時會輸入國碼tw,然後接著就輸入一些基本資料,亂打aa也可以安裝,然後開啟桌面捷徑,上方選單選Configuration>edit Configuration改一下下面tag
[ssmtp]
accept = 465
connect = 25
cert = stunnel.pem
改好後,儲存,關閉,然後上方選單Configuration>Reload Configuration
這邊設定好之後再改原本的php設定
xamp\php\php.ini
[mail function]
SMTP=localhost
smtp_port=25
sendmail_from = googlename@gmail.com
最後再改sendmail的設定
xamp\sendmail\senmail.ini
smtp_server=localhost
smtp_port=25
smtp_ssl=auto
測試php
1.到php/ext目錄下 找有無php_openssl.dll檔案
2.開啟php.ini
3.找extension的位置 是否有;或沒有加一下 extension=php_openssl.dll
4.可以用php相面打<?php phpinfo() ?>查看openssl suppoort是否為 enalbe
如果為win8的話
1.將xampp\xampp\sendmail\sendmail.exe相容性改一下
2.改windows xp(sp3),再改使用管理員(adminstor)執行
開啟google pop設定→https://support.google.com/mail/answer/13273?hl=en&rd=2
1.到gmail右上的設定
2.選pop/imap
3.再選開啟pop 所有郵件
4.儲存
如果為win8的話
1.將xampp\xampp\sendmail\sendmail.exe相容性改一下
2.改windows xp(sp3),再改使用管理員(adminstor)執行
開啟google pop設定→https://support.google.com/mail/answer/13273?hl=en&rd=2
1.到gmail右上的設定
2.選pop/imap
3.再選開啟pop 所有郵件
4.儲存
若以上方法還不行,建議透過以下方法來使用,
1.下載stunnel,stunnel-5.35-installer.exe (透過它代理ssl連線)
位置在http://www.stunnel.org/downloads.html?extra=/stunnel/win32/stunnel-4.27-installer.exe
2.安裝時會輸入國碼tw,然後接著就輸入一些基本資料,亂打aa也可以安裝,然後開啟桌面捷徑,上方選單選Configuration>edit Configuration改一下下面tag
[ssmtp]
accept = 465
connect = 25
cert = stunnel.pem
改好後,儲存,關閉,然後上方選單Configuration>Reload Configuration
這邊設定好之後再改原本的php設定
xamp\php\php.ini
[mail function]
SMTP=localhost
smtp_port=25
sendmail_from = googlename@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
mail.add_x_header=Off最後再改sendmail的設定
xamp\sendmail\senmail.ini
smtp_server=localhost
smtp_port=25
smtp_ssl=auto
default_domain=gmail.com
重新開啟apache
另外如果寄信google該會問一些較低安全性的問題,直接打開吧!就能收到信了
https://www.google.com/settings/u/1/security/lesssecureapps?rfn=27&rfnc=1&asae=2&anexp=lbe2-R1_C
測試php
<?php
$to ="receiver@gmail.com"; //收件者
$title= "test"; //信件標題
$msg = "smtp發信測試";//信件內容
$headers = "From:my@gmail.com"; //寄件者
if(mail("$to", "$title", "$msg", "$headers")):
echo "信件已經發送成功。";//寄信成功就會顯示的提示訊息
else:
echo "信件發送失敗!";//寄信失敗顯示的錯誤訊息
endif;
?>
$to ="receiver@gmail.com"; //收件者
$title= "test"; //信件標題
$msg = "smtp發信測試";//信件內容
$headers = "From:my@gmail.com"; //寄件者
if(mail("$to", "$title", "$msg", "$headers")):
echo "信件已經發送成功。";//寄信成功就會顯示的提示訊息
else:
echo "信件發送失敗!";//寄信失敗顯示的錯誤訊息
endif;
?>
沒有留言:
張貼留言