簡體   English   中英

如何從特定的IP地址發送電子郵件?

[英]How to send email from a specific ip address?

我正在使用cPanel / CentOS運行vps,我想動態選擇IP地址從php代碼內部發送電子郵件。 (我對任何習慣的方式持開放態度)

有沒有辦法做到這一點? 我真的很感激一些明確的想法,因為我不喜歡exim和stuffs。

PS我已經在WHM中擁有可用的IP。

謝謝

您可以通過使用sendmail和傳遞參數來定義要使用的配置文件來實現此目的。 在配置文件中,您可以使用Masquerading和Relaying選項以及CLIENT_OPTIONS(`Addr = aaa.bbb.ccc.ddd')通過某個IP發送。

使用PHP 郵件時,使用additional_parameters指定要使用的sendmail配置文件,並在該配置文件中使用上述選項進行配置。

PHP無法控制發送郵件的SMTP服務器。 您可以將SMTP服務器(sendmail,postfix,exim等)綁定到特定接口,但這與PHP無關。 PHP參與電子郵件發送過程純粹是為了生成郵件,然后將其交給SMTP服務器進行實際交付。

這是一個想法。 如果您需要的是從您可以控制的特定IP發送郵件,但是該郵件的推動力不是來自該IP,而是來自某些Web界面或其他任何內容,您可以:

將郵件詳細信息添加到DB上的表中,並將所需的IP地址作為字段。

設置crons在每個包含這些IP的盒子上運行php腳本。

使用該腳本解析表以查找需要來自該IP的任何郵件。

發送郵件。

我在虛擬主機上有一個經銷商帳戶,例如我的所有域名都在相同的IP號碼下,然后我用來發送電子郵件的域名,它將在相同的IP號碼下發送,我認為它是由smtp especification,你可以配置你的smtp發送電子郵件與另一台服務器,當然你有一個帳戶。

還要創建一個表來控制您要使用哪個服務器來發送您的電子郵件。

ClientPortOptions和DaemonPortOptions是特殊情況,因為可以定義多個客戶端/守護進程。 這可以通過

CLIENT_OPTIONS(`field1=value1,field2=value2,...')
DAEMON_OPTIONS(`field1=value1,field2=value2,...')

請注意,允許多個CLIENT_OPTIONS()命令(以及多個ClientPortOptions設置)以便為每個協議族提供設置(例如,一個用於Family = inet,一個用於Family = inet6)。 對一個系列的限制僅影響該特定系列上的傳出連接。

資料來源: http//www.sendmail.com/sm/open_source/docs/configuration_readme/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM