10MinuteMail.com首頁樣式

10MinuteMail.com首頁樣式

10MinuteMail.com首頁畫面

常上網的各位一定都有用過「臨時電子信箱」吧?所謂的「臨時電子信箱」就是有時效性的Email,最大的功用就是拿去註冊較不重要、資料外洩風險高或是怪怪的網站,這可以防止Email被外流或是未來收到一堆廣告信。雖然在早期也有類似網站防堵上述問題,但用的技術較複雜且需申請帳號,這裡就暫時不提了。因此「臨時電子信箱」就這樣誕生了,最常在各大網站被介紹的非「10 Minute Mail」莫屬了!

Fish原以為架設這類的網站技術層面要求很高(mail server、webmail、database server),直到我買了這個虛擬主機才知道,用php內建的IMAP函數庫加上虛擬主機控制台cPanel的「郵件管理工具」就能輕鬆辦到,還不需要用到資料庫呢!

那麼,到底該怎麼辦到呢?
首先佈署cPanel控制台的設定,先看cPanel控制台中「郵件管理工具」的「預設帳號」功能,該功能夠將寄至某域名的未知收件人(查無此人)都轉寄到某Email中,再看虛擬主機是否有提供POP3或是IMAP的外部收信功能(未必每個cPanel控制台都有這兩項功能,主要是看您的虛擬主機提供商是否有提供)。

FishYes.tw的虛擬主機商有提供IMAP和POP3的服務

FishYes.tw的虛擬主機商有提供IMAP和POP3的服務

FishYes.tw的虛擬主機商有提供IMAP和POP3的服務
FishYes.tw的虛擬主機商有提供電子郵件域設帳號的服務

FishYes.tw的虛擬主機商有提供電子郵件域設帳號的服務

第一步:先預設一組帳號來收取臨時信箱的信件,以下圖為例,建立了一組10mail@fishyes.tw當作收取臨時信件的帳號。

設定10mail@fishyes.tw臨時帳號

設定10mail@fishyes.tw臨時帳號

設定10mail@fishyes.tw臨時帳號

記下虛擬主機提供的連線資訊,你必須使用者些資訊才能夠連上郵件伺服器:

將主機提供的連線資訊記錄下來

將主機提供的連線資訊記錄下來

將主機提供的連線資訊記錄下來

第二步:如下圖設置網域fishyes.tw的「預設帳號」將未知的收件人都轉寄到10mail@fishyes.tw信箱中。

將10mail@fishyes.tw設定為域設帳號

將10mail@fishyes.tw設定為域設帳號

將10mail@fishyes.tw設定為域設帳號

這樣就完成佈署了,接著只要能使用POP3或是IMAP的程式語言都能夠實作「臨時電子信箱」的功能了,主要的原理如下:

第一步:先隨機產生一組@fishyes.tw的帳號給使用者(例如產生了一組a123456@fishyes.tw的信箱,注意該帳號是未知的收件人),並計時10分鐘。

第二步:當使用者在10分鐘內重新整理網頁,就透過POP3或是IMAP協定去檢查10mail@fishyes.tw這組信箱的信件中,收件人為"a123456@fishyes.tw"的信件。

第三步:將第二步找到的信件(是寄給a123456@fishyes.tw的)給顯示出來就完成了。

第四步:當使用者產生信箱超過10分鐘後,就不再讓使用者存取"a123456@fishyes.tw",並回到第一步改產生其他信箱。

下一篇Fish將試著演示PHP使用Session實作IMAP讀取信箱達到,10分鐘電子信箱的效果,盡請期待!