Postfix による Postmap Header_Checks 後の警告メッセージ

Postfix による Postmap Header_Checks 後の警告メッセージ

私はUbuntu Serverでpostfix-pcreを使用しています。以下のコマンドでheader_checksの設定をテストすると

postmap -q 'To: "Markus Schlei" <[email protected]>' regexp:/etc/postfix/header_checks

次の警告メッセージが表示されます。

postmap: 警告: 正規表現マップ /etc/postfix/header_checks、行 36: 先行する正規表現が無効です。

また、テストは拒否されません。 36 行目に次のコードがあります:

/^To:.*\@(?!(gmail\.com)).*/ REJECT Test-Nr-1

一致しないメッセージをすべて拒否したいgmail.com

編集1: 「(?!(..)" 警告メッセージは消えましたが、私の望みとは逆の結果になりました。

答え1

POSIX 正規表現と PCRE 正規表現があることを知っておく必要があります。

使用しています否定先読み?!) とともに正規表現テーブル。このタイプの正規表現は、PCRE 正規表現テーブルでのみサポートされます。

Postfix システムがサポートする検索テーブルの種類を確認するには、「postconf -m」コマンドを使用します。

pcreがリストされている場合は、regexpテーブルの代わりにpcreテーブルに切り替えてください。そうでない場合は、インストールする必要があります。postfix-pcre

関連情報