Exim FAQ

前の満足です

8. 書き直すアドレス

Q0801: どのように私は、Eximに、hostnameを送信側のアドレスからはがせることができますか?

A0801: 以下のフォームにおいて書換規則をセットアップしたならば:

   *@*.your.domain $1@your.domain

そして、Eximは、間で何でも削除して、封筒の中のすべてのアドレスとヘッダーを書き直すでしょう。@ そしてyour.domain. これは、Eximが処理するすべてのメッセージにあてはまります。 もし送信側アドレスだけを書き直したいならば、規則はそうthe the であるはずです

   *@*.your.domain $1@your.domain Ffrs

これは規則を封筒送信側アドレスに、そして送信者:返答に:送信側:ヘッダーにだけ適用します。

Q0802: 私は、発信の上のドメインのhostname部分を削除するために設定されたEximを持っているのに、メールが配達される時に、hostnameは出席 しています。

A0802: ドメインについてDNSレコードをチェックしてください。 MXレコードがAレコードへのの代わりにCNAMEレコードを示すならば、CNAMEレコードから得られるように、いくつかのMTAs(Eximでない) は、ドメインネームをその「正規です」フォームに変更して、アドレスを書き直しやすい。

Q0803: 私は、ローカルなイントラネットの中に残っているメッセージのためにではなく外部に行くメールの中で現住所を書き直したい。

A0803:theを使うことができますheaders_rewrite これをする輸送船の上のオプション。 書き直しは、その時、まさに、輸送を通過するメッセージのそれらのコピーにあてはまるでしょう。 return_path オプションは、同様に、送信側アドレスを書き直すために使われることができます。 運送時間に受領したアドレスを書き直す方法が全然ありません。 しかし、これらが定義リモートアドレスによってにある時に、たぶん、それらを書き直したくありません。

それが内部の、そして外部のメールのために違うSMTP輸送船を使うように、コンフィギュレーションを設定する必要があります。 両方の場合に1つのルータを使っているならば、このようにそれを設定することができました:

   dnslookup:

ドライバー=dnslookup輸送=$ {ならば マッチ{$domain}{\N\.my\.domain$\N}{int_smtp}{ext_smtp} }

この例は.my.domainに終わっているドメインのためのint_smtp輸送とすべてのためのext_smtpを 他に使います。 ext_smtp輸送はこのような何かであるかもしれません:

   ext_smtp:

driver = smtp

headers_rewrite = *@*.my.domain \

${ルックアップ{$1]cdb{/など/2ドル/メール.の.cdbの処理]{$価値]の失敗]return_path =\

ならば マッチ{$return_path}{\N^([^@]+)@(.*)\.my\.domain$\N}\{\

${ルックアップ{$1]cdb{/など/2ドル/メール.の.cdbの処理]{$価値]の失敗]\}\失

敗}

この例は各ドメインのために外部にローカルなアドレス変換の別個のファイルを使います。 これはもちろん唯一の可能性ではありません。 headers_rewrite そしてreturn_path オプションはそれぞれ同じ書き直しをヘッダーラインと封筒送信側アドレスに適用します。

Q0804: 私は、ログイン名を「友好的です」名に変更するためにこの書換規則を使っているけれども、メールが大文字ログイン名を受け取るならば、それは書き直されま せん。

         *@my.domain     ${ルックアップ{$1]dbm{/usr/lib/exim/longforms]\{$価値]の

失敗の]@my.domain bcfrtFT

longformsデータベースはフォームの入力を持っています:

   ano23: A.N. 他

A0804: 代わってください。$1 過ぎる規則において${lc:$1} それがルックアップキーとして使われる前に小文字に現地調達部品を強制するため。

Q0805: リライト定規が故障するならば、完全にメッセージに失敗することは可能ですか?

A0805: それは、「メッセージに失敗してください」によって、意味していて、あなたにアドレスするものが書き直しているものに依存します。 局所領域のために受領したアドレスを書き直しているならば、することができます:

         *@dom.ain ${ルックアップ{$1]dbm{ずっと/wher/]{$価値]{failaddr]]Ehq

そして、エイリアスファイルの中で、何かを似ることにしてください。

         failaddr:   :失敗してください: 書き直しは失敗しました。

これは1人の受領者に失敗します。 - 他は独立して処理されます。

Q0806: 私は書換規則の中のルックアップのためにキーとして$ドメインを使っているけれども、その内容は小文字化されていません。 ドメインは、caselessly処理されてはなりませんか?

A0806: $ドメインの価値は、アドレスの中で出現する実際のドメイン です。 それはもちろんより低くケースに入れられることができたけれども、私は、ケースが交換されるならば、何人かの人々が、無分別であるように見える混じるケー スドメインネームを持っているので、それがいくらかの不幸を起こすであろうと知っています。 従ってリライトの中にケースを保存する1つの望み

   *@*. TheRap.com something@$domain

「therap」が2語のように見えないので。 私は、それが些細であるようであると知っているけれども、それは何人かの人々に重要です。 - 特に、いくらかの不運な事故によるならば、小文字は無作法な何かです。

theによって下のケーシングをtrivallyに強制できます${lc: オペレータ。 それの代わりに$ドメイン 書いてください。${lc:$ドメイン].

Q0807: 私は、受領者のドメインに依存しているローカルな送信側アドレスを書き直したい。

A0807: 一般に、メッセージが複数の受領者を持つかもしれず、Eximが単に各メッセージの1つのコピーを保持するので、これは可能でありません。 それはまたいくつかの受領したアドレスを持つメッセージの1つのコピーを配達するかもしれません。 テスト--例えばToの内容--にリライト規則 の中で正規表現マッチを使って不完全な仕事をすることができます:ヘッダー。 これは複数の受領者の場合のを除いて働くでしょう。



前の満足です