
| ・ |
ドキュメントセンターを初めてご利用する方や運営方針についての基本的な姿勢をご覧になりたい方へ。
|
| ご利用の皆様から多く寄せられる質問にお答えしています。 |
|
| ・ |
ディーエーオフィスなどが利用する用語に関する解説を行います。
|
|
|
 |
 |  |
Plesk稼働サーバに添付される独自のqmailへパイプにてプログラムへ渡すにはどうしますか? |
メールの着信時処理を設定するファイルへパイプを設定します。
Pleskにて稼働する標準のqmailは独自の実装となっていますが、qmailの基本に従い、パイプを設定ファイル上へ記述できるようになっています。sendmailには、.forwardファイルがありますが、qmailの場合は、アカウント毎に.qmailのようなファイルができます。中身はテキストになっており、Pleskの場合は、.qmailという名前になり、通常は、.qmail-rootのようなアカウント名に応じた名称が付与されることもあります。
実際には以下のような要領・場所へファイルができているはずです。ドメイン名毎にディレクトリができるのですが、さらにアカウント毎にもディレクトリができます。.qmailファイルは、不可視属性といって、通常のlsコマンドでは閲覧できなくなっています。以下のような「ls -al」を実行すると、すべてのファイルが閲覧できるようになります。
場所の一例
/var/qmail/mailnames/domain.com/test1/.qmail
一覧コマンド
ls -al
! 実際の設定の流れ
まずは、Pleskコントロールパネルへログインし、パイプ処理させたいメールアカウントを作ります。転送設定などを入れておけば、後でシェルから中身を見たときに、確認がやりやすくなります。他のアカウントと比べて明確に分かる転送先を仮で書いてしまいます。
次に、パイプ処理させたいプログラムの設定や場所を確認します。試験してみたところ、rootアカウントではパイプさせても動作しませんでしたが、「popuser:popuser」などへ設定を変更するとうまくいきました。以下は、所有者、グループともに、popuserへ変更する例です。設置したファイルに対して、所有権の変更を行います。
chown popuser:popuser test.cgi
後でパイプ設定をするため、必要となる正確な設置場所をメモします。「pwd」コマンドが便利です。「/var/qmail/mailnames/domain.com/test1」のようなディレクトリ名が簡単に取得できます。「ls」コマンドで稼働予定のプログラム名も確認し、「/var/qmail/mailnames/domain.com/test1/test.php」のような設置場所を把握します。なお、所有者とグループ設定が適切であれば、設置場所は特に問われません。
pwd
仕上げは、シェルからログインして、.qmailファイルを探しに行きます。「/var/qmail/mailnames」あたりへ移動し、当該のドメインを見つけてください。「cd」コマンドで移動し、アカウントも見つけてください。中身を確認し、パイプを設定します。
cd /var/qmail/mailnames
ls
cd domain.com
ls
cd test1
ls -al
vi .qmail
! .qmailファイルの書き換え
例えば、Pleskコントロールパネルからメールアカウントを作り、転送先を設定すると、以下のような内容で設定されているはずです。.qmailファイルへ書き加えます。以下は、パイプ設定し、PHPスクリプトを起動する例です。PHPスクリプトは、冒頭にPHPパスなどの記述も必要ないようです。また、Pleskの場合は、PHPのパスが通してあるため、パイプ宣言でフルパスを指定する必要もないようです。
変更前の例)
| true
./Maildir/
&test@test.com
変更後の例)
| true
./Maildir/
|php /var/qmail/mailnames/domain.com/test1/test.php
&test@test.com
test.phpの中身の例
<?php
mail("test@test.com","test","msg");
?>
|
| 文書番号 |
06319 |
| 日付 |
2006.04.03 |
| 参照数 |
1676 |
|