ガラケーで会員登録の方法としてかなり流行った、空メールによる登録もスマホが主流となった今でもよく使用する手法かと思います。
サーバ側でメールを受信して条件付けをして処理を分ける Procmail を使用して実現することができ、専用サーバやroot権限があるサーバでしたらインストールすることもできますが、安価なレンタルサーバでは利用できる環境はあまりありません。
諦め気味に探していましたが、カゴヤ・ジャパンのサーバなら共用サーバでも対応することができます。
KAGOYA 共用サーバ
サーバ側の設定についてもサポートに解説もあるので比較容易に設置することができ、作業ステップとしては以下の2点となります。
Contents
1.サーバのコントロールパネルでのメールの転送設定
サーバのコントロールパネルでカゴヤのデフォルドメイン(@s3s-0.kagoya.net など)へのメールの転送設定を行います。
設定手順はKAGOYAサポートページ書かれているので、その通りに設定します。
◼︎KAGOYA サポート
届いたメールをウェブサーバーのプログラムで処理したい。
2..forward と .procmailrc を設置
FTPでサーバのホームディレクトリ(public_htmlフォルダの上のディレクトリ)に .forward と .procmailrc を設置して、procmail でメールをトリガにしたプログラムへの受け渡しを行います。
.forwardの設定
.forward には、 procmail を介してメールを渡す設定するのみとなるためシンプルで、以下のように書くだけになります。
◼︎記述
“|IFS=’ ‘ && exec /usr/bin/procmail -f- || exit 75 #username”
KAGOYAサーバの場合はこのようになります。
"|IFS=' ' && exec /usr/bin/procmail -f- || exit 75 #kir123456"
.procmailrcの設定
SHELL=/usr/bin/sh PATH=/bin:/usr/bin:/sbin:/usr/sbin MAILDIR=$home/Maildir DEFAULT=$MAILDIR LOGFILE=$HOME/procmail.log :0 * ^To:.*testmail@test.jp | /usr/local/bin/php /home/kir123456/public_html/regist.php
3.処理するプログラムを作成する。
あとは普通にPHPやPerlなどでプログラムを作成すれば空メールからの処理を行うことができます。
regist.phpファイル
#!/usr/local/bin/php -q //PHPでファイルを自動作成する処理(以下略) //
root権限があって、コスト的にも安価で利用できるAWSなどクラウドサーバでも構築することはできますが、KAGOYAサーバを使用すれば、サーバに詳しくない方でも利用できること、運用後のサーバ管理も安心です。
また、2週間はトライアル期間となる、料金はかからないので試してみてから、本利用でも良いかと思います。