![](/img/trans.png)
[英]Codeigniter 3 Unable to send email using PHP SMTP. Your server might not be configured to send mail using this method
[英]Sending email in PHP via SMTP. Hide server IP
我的應用程序的用戶可以通過他們的SMTP信息發送電子郵件。
我想代表他們的SMTP發送100%的電子郵件。 如果有人開始發送垃圾郵件,我不希望其他用戶受到負面影響。
但是在收到的標題中,我看到了我的服務器IP,所以我認為每個人都會受到影響。
如何確保服務器不承擔責任? 我需要確保一個人不會搞砸其他人。
由於您是中間人,這種情況,即您代表其他人連接到SMTP服務器,由您的應用程序來處理垃圾郵件。 你無法在網絡層面解決這個問題。
由於您在PHP發送的電子郵件的標題中看到了您的服務器IP,我是正確的假設:
如果是這樣,那么對於受到攻擊和發送垃圾郵件的用戶的保護,您確實有一些有限的選項。
第一種選擇是在PHP應用程序中實現速率限制,使用持久存儲來記錄一段時間內發送的電子郵件數量。 但是,此解決方案非常有限,因為它不包括濫用SMTP服務器本身。
我的建議是調查策略服務器 ,例如policyd和實現配額 。 使用指定每小時最大發送速率的SASL用戶名的配額將有助於降低添加到垃圾郵件黑名單的可能性。 如果您選擇的策略服務器支持達到配額通知,我也會實現(允許您識別定期訪問其配額的用戶,表明該帳戶有問題)。
確定要限制發送的速率很困難,因為您必須平衡用戶需求與保護。 也許一個好的起點是監控用戶當前每小時發送的平均電子郵件數量,並以此為出發點?
同樣,上述假設上述三點是正確的。 如果您只是在沒有身份驗證的情況下將郵件傳遞給SMTP守護程序,或者服務器是外部的並且無法修改,那么您將不得不在PHP中強制執行限制。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.