/etc/aliases でコマンドを実行するには?

ショコラ
ショコラ

/etc/aliases でコマンドを実行するには?

/etc/aliases に「{エイリアス名}:”|{コマンド}”」でキメマス。
※virtualドメインを使っている場合には、/var/qmail/mailnames/{ドメイン}/{アカウント}/.qmail を修正します。

もっさん先輩
もっさん先輩
{エイリアス名}:"|{コマンド}"

メールが届いた時に、curl を使ってエンドポイントにメールの内容を送信することができます。

mossan:"|curl -X POST --data-urlencode @- http://nginx/endpoint.php"

virtualドメインを使っている場合は↓こちらです。

| curl -X POST --data-urlencode @- http://nginx/endpoint.php

以下のプログラムをエンドポイントに設定すれば、POST した内容をファイルに書き出すことができます。

<?php
$body = file_get_contents('php://input');
$body = urldecode($body);
ob_start();
var_dump($body,$_REQUEST,$_GET,$_POST,$_COOKIE,$_ENV);
file_put_contents('/tmp/request.log',ob_get_clean(),FILE_APPEND|LOCK_EX);

シチュエーション

メールが届いた時に即時にコマンドを実行したい。

Scroll to Top