サーバー移転後にお問い合わせフォームが動かないときの確認手順
サーバー移転後にお問い合わせフォームが動かないときの確認手順。配置、PHP、セッション、添付、SMTPを症状別に切り分け、本番URLでの受信確認まで整理します。
サーバー移転後にフォームが送れなくなったら、ファイルの配置、PHPの環境、セッション、メール送信の順に切り分けます。同じファイルをコピーしていても、サーバーの機能や設定が同じとは限りません。
この記事はPHPメールフォームを移転する際の確認ガイドです。すでに障害が起きている場合も、設定を一度に変更せず、症状と変更内容を記録して進めましょう。
移転前の設定と、動いていた状態を残す
フォームのファイル構成、PHPのバージョンと必要な拡張、SMTPの接続条件、通知先、公開URLを控えます。認証情報は別の安全な方法で管理します。旧環境をすぐ削除せず、切り替えの確認期間と戻す判断を決めておきましょう。
入力画面の見た目だけでなく、確認画面からの修正、添付、自動返信など、使用している機能を一覧にします。移転先で同じ操作を試す基準になります。
まずは症状が起きる段階を特定する
| 症状 | 最初に見ること |
|---|---|
| フォームが404になる | 配置先、リンク、ファイル名の大文字・小文字 |
| 白い画面や500エラー | PHPの実行環境とサーバーのエラーログ |
| 確認画面で値が消える | セッション、Cookie、遷移先URL |
| 添付だけ失敗する | 容量制限、一時保存先、書き込み権限 |
| 完了するが届かない | 送信結果、SMTP、送信元、受信側 |
どれも原因の候補であり、症状だけで確定するものではありません。新しいサーバーのログや設定と照合します。エラーの詳細を公開画面へ出し続けず、管理者が確認する方法を使ってください。
PHPとセッションの条件を確認する
移転先のPHPのバージョンや拡張機能を、使用する製品の必要条件と比較します。ローカルで動いていたことだけでは、新しい公開環境への対応は確認できません。PHP自体の変更点は公式の移行ガイドで確認できます。
確認画面で情報が引き継がれない場合は、セッションの保存先と書き込み権限、Cookieの対象ドメインやパス、HTTPSへの切り替えを調べます。設定の意味はPHPのセッション設定を参照してください。公開先を変えた結果、入力と確認で別のホストへ移動していないかも確認します。
メールの移転とWebの移転を分けて考える
Webサーバーを変更しても、メールサービスを継続する場合があります。逆に、ドメインは同じでもSMTPの接続先や認証条件が変わる場合があります。新しい環境で外向きのSMTP接続が許可されているか、接続先・暗号化方式・ポートが提供元の案内と一致しているかを確認します。
送信元ドメインの認証も確認対象です。Gmail向けの要件はGoogleのメール送信者ガイドラインに案内されています。必要なDNS設定は利用するメールサービスの指定に従い、関係のないレコードをまとめて書き換えないようにします。
詳しい到達の切り分けはメールがGmailに届かない場合を参照してください。完了画面だけではメールの到達は確認できません。
一時URLのテストと、本番URLのテストを分ける
一時URLでは、CookieやHTTPS、絶対パス、送信元の設定が本番と異なる場合があります。検証用のURLで動いた後も、切り替え後の実際のURLで確認が必要です。旧環境を見ているのか新環境を見ているのかも記録してください。
- サイトの入口から新しいフォームへ進めるか。
- 入力・確認・修正・完了が同じ環境でつながるか。
- 管理者通知と自動返信を受信できるか。
- 添付を使用する場合、受信した内容まで正しいか。
- 自動返信や完了画面に旧URLが残っていないか。
切り替え後の確認結果を保守へ引き継ぐ
実際に切り替えた日時、環境、試した操作、受信結果を残します。問題があれば、追加修正と旧環境へ戻す判断を担当者間で共有します。メールの受付を止められない場合は、移転中の代替窓口も先に用意します。
FreelanceFormの環境条件は導入ガイドで確認できます。移転後は保守・点検の記録を更新し、新しい管理担当者でも次の変更に対応できるようにしましょう。