さくらサーバーでOpenPNEの携帯メール投稿機能を実現
※isseiumが2009/04/26に書いた記事を、ブログ移転のため転載したものです。情報が古い可能性があります。
さくらサーバーでOpenPNEの携帯メール投稿機能を実現した際のメモ. (2009/08/23 改訂)
いろいろぐぐったら先駆者たちが対策方法を生み出していました.ありがたや.
http://www.cre8system.jp/blog/2006/11/openpne.html
http://yukiita.net/blog/entry/2006/000497.php
http://sumidagawa.sblo.jp/article/11226948.html
今回は,新しい方法として,GoogleAppsを用いて解決を試みてみました.
さくらサーバで携帯メール投稿ができない理由は
携帯投稿先ドメインがsns.foobar.comであった場合
〜@sns.foobar.com
にメールがきたら,すべてOpenPNE/bin/mail.phpにその処理を投げたいんだが,さくらサーバーだとそれができないっていうことです.
で解決策としては,上記参考サイトに書いてあるような,google アカウントの "+"の特徴を使ったり,力業でアカウントを増やしたりするという方法です.
私は普段からドメイン宛アドレスのキャッチオールができるGoolge Apps を使っていたので,せっかくだからこれを使えばいいと思いました.
(以下、2009年8月23日 改訂)
0. 前提条件
OpenPNE ドメイン | sns.foobar.com |
---|---|
携帯投稿専用ドメイン(このドメインをGoogle Apps に申込) | sns-mobile.foobar.com |
1. さくらサーバ側に携帯投稿専用アドレスを作成
さくらのコントロールパネルから、mobile というメールアカウントを作成します。
同時に、[メール転送] のところから転送設定をします。転送先はどこでもかまいません。今回は、hoge@gmail.com (自分のgmail) とします。
2. Google Apps のセットアップ
下記リンクからGoogleAppsに申し込みしてください.詳細は省略します。
http://www.google.com/a/help/intl/ja/index.html
申し込み時のドメイン名は,携帯メール投稿専用のドメインにしますので,OpenPNEとは違うドメインにしてください.
今回は、webmaster@sns-mobile.foobar.com で申し込んだとします.
ドメインの所有権の確認とMXレコードの変更
さくらの「会員メニュー→契約情報→ドメインメニュー→ゾーン設定」で
googlexxxxxxxxx.sns-mobile CNAME google.com. sns-mobile MX 10 ASPMX.L.GOOGLE.COM. MX 20 ALT1.ASPMX.L.GOOGLE.COM. MX 20 ALT2.ASPMX.L.GOOGLE.COM. MX 30 ASPMX2.GOOGLEMAIL.COM. MX 30 ASPMX3.GOOGLEMAIL.COM. MX 30 ASPMX4.GOOGLEMAIL.COM. MX 30 ASPMX5.GOOGLEMAIL.COM.
googleからはじまるやつは,所有権の確認用のCNAMEです.
以上を終えたら、、webmaster@sns-mobile.foobar.com に メールが届くことを確認してください。
3. キャッチオールアドレスの設定
[ダッシュボード] → [メール] → [キャッチオールアドレス] にて、[次のアドレスに転送] を選択し、[webmaster] と入力します。
4. キャッチオールアドレスからの転送
webmaster@sns-mobile.foobar.com のgmail (管理画面からは右上の[受信トレイ])を開きます。その後、
(右上) [設定] → [メール転送とPOPとIMAP]
を開き、[転送]の項目を次のようにします。
受信メールを [mobile@sns.foobar.com] に転送し・・・
5. さくらのメールサーバ設定
ssh でさくらサーバにアクセスします。
$ cd /home/(アカウント)/MailBox/mobile/ $ vi .mailfilter
上記のように vi などのエディタで .mailfilter を開くと
cc "!hoge@gmail.com"
となっていると思います。これをすべて消して、以下のように書き換えます。
vi の使い方がわからない人は、Win の メモ帳などで .mailfilter を作成し、ftpでアップロードしてもかまいません。
to "| /usr/local/bin/php /home/(アカウント)/path/to/openpne/bin/mail.php" exit
※path/to/openpne は OpenPNE までのパス(config.php があるところ) を指します。
自分の場合は /home/(アカウント)/www/openpne/bin/mail.php となります。
6. config.phpの変更
config.phpの26行目付近を
define(’MAIL_SERVER_DOMAIN’, ’sns-mobile.foobar.com’); Google Appsのドメイン
に書き換えます.
以上で設定は終了です。OpenPNE の携帯メール投稿機能を実際に使用して、動作を確認してみてください.
追伸
KOKOさんimax さんのおかげで改訂することができました。感謝申し上げます。
まだまだわかりにくいところがあるかと思います。この記事を見たかたで、なにか質問等がありましたらお気軽にコメントをください。