我試圖在公司網站上實現密碼重置功能,如果用戶需要重置密碼,她可以點擊一個鏈接,隨機生成一個新密碼將發送到她的收件箱。PHP郵件問題
我使用PHP mail()
函數。現在,我在Ubuntu機器上運行PHP5。在php.ini中,我聲明SMTP是運行郵件服務器和smtp_port的機器的IP爲25.此外,我嘗試telnet到端口25上的郵件服務器併發送郵件 - 它工作(我的工作終端是Windows) 。
問題是郵件沒有被髮送/接收 - 調用mail()
的PHP腳本掛起約1分鐘,其末尾mail()
返回true
。
最糟糕的是,我對如何甚至找出問題所在 - 使用PHP,使用Ubuntu,使用郵件服務器或使用代碼提出了一些想法!
有人可以幫忙嗎?
我在一篇教程中讀到,如果未指定sendmail_path,linux也將成功使用SMTP字段。那是不正確的? – 2009-08-13 16:32:35
據我所知,這是不正確的。在郵件命令的註釋部分,它甚至會說「Windows的郵件實現與Unix的實現有很多不同之處,首先,它不使用本地二進制文件來編寫郵件,而只使用直接套接字」意味着unix版本總是使用sendmail。 – Powerlord 2009-08-13 16:35:49
然後我將使用PEAR :: Mail。我現在正要離家去(這裏晚上10點)。將在早上寫關於它:) – 2009-08-13 16:39:11