大家好,我嘗試用 php 內建的 mail 函式來寄 email,可是總會得到以下回應:
Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in D:\web\www\aliens\report.php on line 30,
這似乎是和 mailserver 有關,但我並沒有安裝或設定郵件伺服器,
我使用的 web server 是 nginx,請問該如何替 nginx 設定郵件伺服器呢?
麻煩大家幫小弟解答疑惑 ! ! !
php 的寄信設定,是預設本機端會有 mail server。這在 Linux 系統是幾乎皆如此。不過你的訊息看來是在 windows 裡,所以你要設定一個你有權限可以寄信的 mail server,比如 gmail 或 hinet。去申請一個 mail account,再參考它的 smtp 設定,將 server IP/Domain name 放到 php,ini 的 smtp 設項即可。
問題不出在nginx伺服器
問題出在php.ini
打開它,找到[mail function]或者smtp之類的關鍵字,PHP寄送email的相關設定就在這裡,just try it
我会建议使用强大而且方便使用的PHPMailer
https://github.com/Synchro/PHPMailer