[英]PHP function mail() doesn't work on AWS EC2 server
最近,我安裝了基於Ubuntu 14.04的AWS EC2虛擬服務器。 但是我有下一個問題: PHP函數mail()不起作用 。
我安裝了sendmail:
須藤apt-get install sendmail
我檢查其工作情況:
ps -aux | grep sendmail
我更改了php.ini:
sendmail_path = / usr / sbin / sendmail
我跑:
須藤sendmailconfig
所有類別均選擇“ 是 ”。
重新啟動服務:
服務sendmail重新啟動
將我的主機名添加到/ etc / hosts:
127.0.0.1 localhost.localdomain本地主機myhostname
我嘗試測試發送:
echo -e“收件人:myemail@example.com \\ n主題:Test \\ nTest \\ n” | sendmail -bm -t -v
所有電子郵件都存儲在/ var / mail / ubuntu中。
我還能做其他事情嗎?
郵件功能在AWS,azure等基於雲的服務器中不起作用。 我已經遇到了這個問題,並用php mailer庫解決了,所以我建議您使用它。
Ubuntu 16.04 LTS是Amazon EC2的“默認” Ubuntu映像(截至2016年9月),將需要安裝和配置Postfix MTA以便PHP發送郵件。
sudo apt-get update
sudo apt install mailutils
保持“互聯網站點”處於選中狀態,然后輸入正確的主機名。
然后,使用您喜歡的vim或nano編輯器,並修復main.cf文件以僅處理來自本地網絡接口的流量(環回),並將域設置為正確的主機域名。
sudo systemctl restart postfix
詳情請參見: https : //www.digitalocean.com/community/tutorials/how-to-install-and-configure-postfix-as-a-send-only-smtp-server-on-ubuntu-16-04
這就是在運行WordPress應用程序的Ubuntu 16.04上運行出站電子郵件所需要的全部魔術。
祝好運。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.