さくらのレンタルサーバーでメール受信時にスクリプトを起動する設定方法
2009.04.05
error この記事は最終更新日から15年以上が経過しています。
以前、メール受信時に perl スクリプトを起動して自動処理させる方法とかメール受信時に PHP スクリプトを起動して自動処理させる方法なんかを書きましたが、今回は、具体的に特定のレンタルサーバー(さくらのレンタルサーバ)で、メール受信時にスクリプトを起動させる方法を書いてみようと思います。
自分のアカウントのメールアドレスを確認する
さくらのレンタルサーバのサービスで、普通にメールアカウントを追加しても、メールサーバーとWebサーバーが分かれているため、そのままではメール受信時にWebサーバー上のスクリプトを起動させることができません。
しかし、さくらのレンタルサーバでは、申込時には通知されませんが、Webサーバーアカウントに対して、ひとつメールアドレスが発行されています。
このアドレスを使用して、受信時にスクリプトを起動させることができます。
というわけで、そのWebサーバーアカウントに割り当てられた、自分のメールアドレスがどんなアドレスなのか確認する方法を説明します。
まず、コントロールパネルにログインします。
「サーバ情報の表示」⇒「サーバに関する情報」と進むと、以下のような画面が表示されるかと思います。
一部画像を修正してありますが、こんな感じの画面が表示されます。
今回必要となる情報は「ホスト名」の部分です。
「www.****sakura.ne.jp」(****は数字)と表示されているかと思います。
これが本来の Webサーバーのホスト名になります。
このホスト名の前に、自分のサーバーアカウント名(FTP や SSH でログインする際に使用するユーザー名)と @(アットマーク)をつけたものが、あなたの Webサーバーのメールアカウントになります。
例えば、Webサーバーのホスト名が「www.9999sakura.ne.jp」で、サーバーアカウント名が「abetatsuya」なら、メールアドレスは「abetatsuya@www.9999sakura.ne.jp」になります。
Webサーバーのメールアドレスに転送するためのメールアカウントの作成
上記で確認したメールアドレスを、直接スクリプト同様のメールアドレスとしてもいいのですが、Web上に公開しているサービスで、メールから起動するスクリプトを使うような場合は、このアドレスを公開するのはあまりお勧めできません。
別にスクリプト起動専用のメールアドレスを作成して、そのアドレスから、上記の Webサーバーのメールアドレスに転送するようにしておくのが無難かと思います。
というわけで、再びさくらのレンタルサーバのコントロールパネルに入り、「メールアドレスの管理」から一つメールアカウントを作成し、そのアカウントから「xxxxx@www.****sakura.ne.jp」に転送するように設定しておきましょう。
スクリプトのパーミッションの変更
実際にメール受信時に起動されるスクリプトのパーミッションを変更しておきましょう。
オーナーに実行権限が必要なので、「700」とか「755」とかにしとけば良いかと。
.forward の設定
SSH でログインし、vi 等で ~/.forward を以下のように編集します。
| /home/userame/dirname/scriptname
「|」(縦棒)を書いて、半角スペースを入れて、起動するスクリプトをフルパスで書けばOKです。
以上で設定は完了です。
コントロールパネルで作成したメールアドレス宛にメールを送れば、用意したスクリプトが起動されるはずです。
Apacheでホスト名を設定する方法—httpd.conf での設定手順
2010.04.03
Apacheで特定のホスト名でアクセスできるように設定する方法を解説します。httpd.conf に適切な設定を追加し、ホスト名と対応するディレクトリを指定する方法を紹介します。
定期的なFTPバックアップ転送を自動化する方法
2009.09.14
FTPを使用して、定期的にサーバー間でバックアップデータを転送する方法を解説します。シェルスクリプトとcronを使って、毎日自動的にバックアップを転送する仕組みを作る手順を紹介します。
パーミッション初心者ガイド:755 と 666 の違いを理解する
2009.03.17
755 や 666 の数字が指し示すファイル権限とは?初心者向けに、ファイルのパーミッション設定を理解するための基本的な知識を紹介します。
コマンドラインでのFTP操作—基本的なコマンドと使い方
2007.12.07
コマンドラインでFTPを操作する機会は少ないかもしれませんが、特定の状況では非常に便利です。この記事では、FTPの基本的なコマンドを紹介し、特にネットワーク系スクリプトやWebサーバー間のファイル転送に役立つ操作を解説します。