Sun Java System Messaging Server 6 2005Q4 管理指南

正向查詢表格

當位址轉寄需要進行自動註冊或特定於源時,可以使用正向查詢表格。請注意,使用正向查詢表格進行郵件的簡單轉寄通常不適合;aliases 檔案或別名查詢表格是執行此類轉寄的更有效方法。依預設,正向查詢表格根本未使用;必須經由 USE_FORWARD_DATABASE 選項明確地啟用才可使用。轉寄表格查詢在執行位址重寫、別名擴充以及所有 FORWARD 對映檢查後才執行。如果正向表格查詢執行成功,則結果替換位址將透過 MTA 位址重寫程序再次完整地執行。

由兩種機制適用於正向查詢表格記憶體內雜湊表或普通資料庫。除非表格的大小過大,才建議使用雜湊表。(1,000 不算過大,100,000 才算過大)。可以透過在 use_text_database 選項中設定位元 3 (值 34) 以及設定 use_forward_database 來啟用雜湊表。雜湊表可從 msg_svr_base/configure/forward.txt 中讀取,會編譯至配置的可重新載入部分,並可由 imsimta reload 指令強制重新載入使用中的 MTA 程序中。

轉寄資料庫是一個 MTA crdb 資料庫,是使用 crdb 公用程式從來源文字檔案建立的。依預設,源文字檔案的格式為:


user1@domain1 changedmailbox1@changeddomain1
user2@domain2 changedmailbox@changeddomain2

但是,如果已透過設定 USE_FORWARD_DATABASE 選項的位元 3 來啟用來源特定的轉寄資料庫,則來源文字檔案格式為︰

source-channel|source-address|original-address changed-address

例如以下項目


tcp_limited|bob@blue.com|helen@red.com  “helen of troy”@siroe.com

將 To: 位址 helen@red.com 對映至「helen of troy」@siroe.com (當且僅當郵件來自 bob@blue.com,並且形成佇列的通道是 tcp_limited 時)。