Midari Create > その他の製品 >

メール送信・ログスクリプト

メール送信・ログスクリプトは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関数を使用した際に本スクリプトが実行されるようになります。

ライセンス

本スクリプトは、無権利創作機構 無権利創作宣言に基づいて著作権放棄されています。
いかなる利用に対しても著作権による制限は発生しません。営利・非営利を問わず、どなたでも自由に複製、改変、転載等していただけます。