WordPress
カスタマイズ事例

WORDPRESS CUSTOMIZATION

Webサーバはさくらレンタルサーバ、でもメールサーバは別のところ、ってときの【問い合わせ送信できない問題】の解決方法

問い合わせフォームには contact form 7 を使っています。カスタマイズ性もあって使いやすい。
 
とあるクライアントのサイトリニューアル案件でもいつものように問い合わせフォームに contact form 7 を使いました。
私のメールアドレスで問い合わせ内容の通知までテストして問題なしなので、お客さんに無事納品しました。
ところが、次の日連絡が来ます。
「問い合わせで送信ボタンを押すと “Internal Server Error” が出るんですがどういうことでしょうか?」

え?どうして??
テストした時はそんな現象でなかったけど。。
メールアドレス間違ったかなと思って何回も確認しても間違っていない。
調査したところ、
レンタルサーバ会社の要件?暗黙のルール?みたいなところで引っかかっていたことが判明しました。
 
このクライアントではさくらのレンタルサーバをWebサーバとして使い、gmailをメールサーバとして使っていたのですが、これが原因だったのです。
なんと、さくらレンタルサーバは該当サーバにドメインがあるとそのドメインを持つメールアドレスはすべて当該サーバに勝手に送信しようとしてしまうという、摩訶不思議なことをしてくれるのだそう。
テストの時には問い合わせ送信先に私のメールアドレスを設定していたから問題なく普通に届いていたけど、クライアントのメールアドレスはサイトのドメインと同じだから、さくらのほうで当該サーバ内にメールアドレスを探して見つけられなかったためにエラーが出ていた、ということのようです。
 
正直、さくらさん、なんでそうした?という感想しかないですが、そうも言ってられないので対応します。
 
それなら強制的にSMTPで送ってしまおう、ということにしました。
プラグイン
WP-Mail-SMTP
を使います。
(設定等は簡単なのでここでは紹介しません。ご自身で考えてやってください)
 
これにて無事問題解決です。
 
 
もうひとつ解決策がありましたので追記します。
さくらコントロールパネルのドメイン設定画面で「メールの利用範囲」を「選択したドメインはメールでは利用しない」に設定すれば、上記のようなめんどくさい設定も不要になったようです。
さくらインターネットコントロールパネルのドメイン設定画面

(この機能、いつごろできたんでしょう。2019年でしょうか。昔はなかった機能です)

【100ウェブ新着情報メルマガ】

WordPressカスタマイズ事例やウェブ制作ノウハウの新着情報、お役立ち情報を
リアルタイムにメルマガ配信!