Webアプリケーションのステージング環境において、本番データの移行などを行った場合、 誤って本番ユーザーにメールが飛ばないようにしたいことがあります。 そこで、完全にメールが飛ばない設定にすると、 今度、メール認証が必要なフロー(例:会員登録)が確認できなくて、不便です。 そこで、全てのメールをリレーせずにフックして、 開発用のメーリングリストに投げる簡単なSMTPサーバーを書いてみました。 一時的にこのSMTPサーバーを使うようにすれば、 本番ユーザーにメールが飛ぶことはなく、 かつメーリングリストで開発者には届くので便利です。 メールの送信にはGMailを使っています。 #!/usr/bin/perl use Carp; use Net::SMTP; use Net::SMTP::SSL; use Net::SMTP::Server; use Net::SMTP::Server::Cl