メール送信・ログスクリプト
メール送信・ログスクリプトはPHPのmail関数で送信されるメールをローカルに保存したり別のサーバから送信できる軽量Pythonスクリプトです。本スクリプトはPostfixなどのメール送信アプリケーションの代替としてPHPからメールを中継する形で動作するため、PHPスクリプトには一切変更を加えることなくメール送信動作のみを置き換えられます。
また、メールの送信とローカルへのメール記録はいずれか一方のみを有効化することもできるため、メール記録のみを有効化して開発環境におけるメール送信のテストに使用することも可能です。
ダウンロード
当サイトからダウンロードインストール・設定
(1) OSに最新のPython3実行環境がインストール済みであることを確認します。(2) ダウンロードしたファイルを解凍し、スクリプト本体(send_and_log_mails)をPHPの実行ユーザー(一般的なLAMP環境では「apache」)がアクセス・書き込み可能なディレクトリに配置します。
(3) chmodコマンド等を使用してスクリプト本体(send_and_log_mails)に実行権限を設定します。
(4) スクリプト本体(send_and_log_mails)をテキストエディタで開き、以下の定数を使用環境に応じて設定します。
LOG_DIR : メールをローカルに記録するフォルダ名(スクリプト本体からの相対パス)
SENDER_ADDR : 送信元メールアドレス(送信するメールのFromヘッダーは全てこのアドレスで上書きされます)
SMTP_HOST : メール送信サーバーのドメイン
SMTP_PORT : メール送信サーバーのポート番号
SMTP_USER : メール送信サーバーに接続する際のユーザーID
SMTP_PASS : メール送信サーバーに接続する際のパスワード
なお、メールをローカルに記録しない場合は「LOG_DIR」を、メールを実際に送信しない場合は「SMTP_HOST」をそれぞれ空文字列またはNoneに設定してください。
(5) php.iniの「sendmail_path」に本スクリプトの絶対パスを指定します。
例:
sendmail_path = /path/to/send_and_log_mails
(6) Apache(一般的なLAMP環境の場合)またはPHP-FPM(PHP-FPMを使用している場合)を再起動することで、PHPのmail関数を使用した際に本スクリプトが実行されるようになります。
ライセンス
本スクリプトは、無権利創作機構 無権利創作宣言に基づいて著作権放棄されています。いかなる利用に対しても著作権による制限は発生しません。営利・非営利を問わず、どなたでも自由に複製、改変、転載等していただけます。