201802212358SMTP外寄郵件伺服器

SMTP外寄郵件伺服器 不少朋友常問道:架設 PHP 論壇或是一些寄信表單時需要用上 PHP MAIL() 這組 function 但有趣的是,對於這組函數的設定上我們需要動到 php.ini 這個系統設定文件但是它完全不支援任何 smtp 認證的方式。 舉例來說最簡單的 AUTH LOGIN 這樣的 smtp 認證機制也不可用,如此一來衍生了一個很大的困難,咱不能使用 ISP 或者是 GMAIL (每個人都有這個帳戶吧)所免費提供的 smtp 來做寄信的這樣一個動作。 為什麼阿?因為 ISP 的 smtp 要你用帳戶及密碼來登入後才能寄信,而 GMAIL 的 SMTP 除了需要帳戶密碼之外,還需要支援 STARTTLS 才能寄信。這對只能做基本寄信的 php 程式來說實在是太強人所難了。

今天筆者這邊有一個簡單又安全的解決方案,讓閣下的寄信程式依然只要以 127.0.0.1 作為 smtp 來寄信的同時,又可以利用 google 的 smtp 免費幫你做寄信的這樣一個動作。 原理其實很簡單,我們在自己的郵件伺服器上架設一個郵件伺服器軟體 "EVO企業郵件伺服器" 並且僅允許來自 127.0.0.1 的寄信要求,再由這強大的外寄郵件伺服器來做透過 GMAIL TLS代寄信這樣一個動作。請至它的官網下載 => EVO mail server,設定到啟動不用兩分鐘這我們就不多說了。 開啟 EvoMailServer.exe 這郵件伺服器軟體後,我們首先按下啟動服務的按鈕,接著打開[設定]>[進階模式]並依照如下的設定 以 google smtp 代寄為例: 外部SMTP主機代寄 ALWAYS SMTP主機的位址 打上外部 smtp 的位址比如 smtp.google.com SMTP主機通訊埠 打上外部 smtp 的 port 比如 587 SMTP寄件者帳戶 打上帳戶(gmail完整郵件地址) SMTP寄件者密碼 打上密碼(gmail密碼) 接下來[安全]>[SMTP開放以下IP位址無條件轉寄]下面填入 127.0.0.1 接下來[IP位址白名單]下面填入 127.0.0.1 最後確認閣下的 php.ini 中有如下的設定 SMTP =localhost smtp_port = 25 sendmail_from=你的gmail郵件地址 只要幾個簡單的步驟,閣下的寄信程式就可以原封不動地透過 gmail SSL smtp 代寄,而您,不必要修改任何一行程式碼,傑克!這真是太神奇了。

沒有上一則|日誌首頁|沒有下一則
回應
關鍵字
[此功能已終止服務]
    沒有新回應!





Powered by Xuite