Google Appsでフォーム経由のメールを受信
Value Domainの場合
独自ドメインでGmailの機能が使える「Google Apps*1」。とても便利で快適なのですが、自サイトに設置しているPHPで作成したフォームから送信されるメールが届きません。
Google Appsのヘルプページ「自分のアカウントにメールを送信するフォームをウェブサイトに配置したが機能しない」によると、それは正しい動作だそうです。
簡単な解決方法は、フォームの送り先メールアドレスをそのサイトのドメインとは別のメールアドレスにすることですが、フォーム専用のメールアドレスを管理するのも面倒なので、四苦八苦してGmailのみで管理する事に成功しました。詳細な解説はできないので、作業記録を残しておきます。
まずGoogle Appsの管理画面にログインし、「ドメインの設定」から「ドメイン名」へと移動します。次に「ドメインエイリアスを追加」をクリックし、プライマリドメインのサブドメインを入力します。
例えばプライマリが「heartfield-web.com」なら、「form.heartfield-web.com」なんて具合です。
次のページで「ドメインの所有権を確認」する方法を選択します。今回は「CNAMEレコードを変更」を選択します。選択すると即座に次の指示が表示されますので手順に従います。以下の番号はGoogle Appsの指示番号と同じです。
- Value-Domainにログインし、「DNS情報変更」ページに移動します。
- Google Appsの画面に表示されている「google12345678901234」と先程入力したサブドメイン「form」を「.(ドット)」でつないだ「google12345678901234.form」のような文字列をホスト名に入力します。
- ターゲットを「google.com.」、タイプを「CNAME」、MX設定を「10」とします。ターゲットの最後の「.」を忘れないよう注意してください。
ここまでの作業でValue-Domainの設定画面に以下の様な項目が追加されます。
ホスト名 | ターゲット | タイプ | MX設定 |
---|---|---|---|
google12345678901234.form | google.com. | CNAME | 10 |
- 「確認してメール配信の設定に進む」をクリックします。
以前はここのプルダウンメニューにValue-Domainもあったのですが、現在はなくなっています。なので「Value DomainでGoogle Apps」を参考にしてください。サーバーによって若干値が違う事があるかもしれませんので、他のサイトも参考にしてください。
最初にGoogle Appsを有効にするときは、ホスト名を「@」にしたと思いますが、今回は先程入力したサブドメイン「form」を入力します。後の値は同じですので、以下のようになります。
ホスト名 | ターゲット | タイプ | MX設定 |
---|---|---|---|
form | aspmx.l.google.com. | MX | 10 |
form | alt1.aspmx.l.google.com. | MX | 20 |
form | alt2.aspmx.l.google.com. | MX | 30 |
form | aspmx2.googlemail.com. | MX | 40 |
form | aspmx3.googlemail.com. | MX | 50 |
form | aspmx4.googlemail.com. | MX | 60 |
form | aspmx5.googlemail.com. | MX | 70 |
form | v=spf1 include:aspmx.googlemail.com ~all | TXT | 10 |
Google Appsの画面に戻り、「指定された手順を完了しました」をクリックします。ドメインの設定画面に入力したサブドメインが表示され、「エイリアスのCNAMEを確認中」と表示されていると思います。この変更が反映されるまで最大48時間かかるそうなので、あとはじっと待ちましょう。全ての設定が正しければ、ドメインエイリアスの状態が「アクティブ」に切り替わります。
後はフォームの送信先をサブドメインのメールアドレスに設定し直せば完了です。実際にサブドメインのメールアドレスを作成する必要はありません。
例えば「formmail@heartfield-web.com」というメールアドレスでフォーム経由のメールを受信したい場合、フォーム経由のメールの送信先を「formmail@form.heartfield-web.com」とするだけで、「formmail@heartfield-web.com」にメールが届く事になります。