ドメインを再取得したのにサイトが404のままのとき|DNS・公開フォルダ・データベース・SSLを順に確かめる手順と、原因がドメイン側に無い場合の見分け方
ドメインを再取得したのにサイトが404のままのとき|DNS・公開フォルダ・データベース・SSLを順に確かめる手順と、原因がドメイン側に無い場合の見分け方
更新を忘れて失効したドメインを、あとから取り直した。サーバーにはドメインの設定が残っている。それなのにサイトを開くと「404 File Not Found」と出て、以前のページが出てこない。店舗や会社のサイトを久しぶりに動かそうとしたときに、こうした相談を受けることがあります。
結論から書きます。ドメインを再取得して、DNSがサーバーを正しく向いているなら、404の原因はドメイン側ではなく、サーバー上の「公開フォルダ」にあることがほとんどです。 ドメインを取り直したこと自体は、サーバーの中身を戻してくれません。確かめる順番は次のとおりです。
- DNS:ドメインがどのサーバーを向いているかを調べる(ここが合っていればドメイン側は終わり)
- 公開フォルダ:サーバー上で、そのドメイン用の公開フォルダにファイルがあるかを見る
- データベース:WordPressなら、記事や設定が入ったデータベースが残っているかを見る
- SSL:証明書が失効中の期間に更新できず切れていないかを見る
- 復旧したら、更新とバックアップを先に済ませてから公開を再開する
graciautoでは、名古屋の美容サロンFCをはじめ、店舗や事業者のサイトの保守と、止まっていたサイトの点検を行う機会があります。以下は、失効から約1年後に再取得したドメインで、404の原因を突き止めて復旧した実例と、そこから整理した手順です。
実例:ドメインは正常、原因は自分たちが退避した公開フォルダだった
以前に制作を担当した事業者のサイトで、ドメインが更新されずに失効し、約1年後に別のサービスで取り直された、という案件がありました。サーバー上にドメインの設定は残っています。それでもサイトは404。「再取得したドメインの設定がおかしいのではないか」というのが最初の見立てでした。
順に確かめた結果は次のとおりです。
| 確認した項目 | 実測 | 判断 |
|---|---|---|
| DNS(Aレコード・ネームサーバー) | サーバーのIPアドレスを正しく向いている | ドメイン側は正常 |
| 404の画面 | サーバー会社の標準の「404 File Not Found」ページ | 公開フォルダに中身が無いだけ |
| 公開フォルダ | ドメイン用の公開フォルダが存在しない | ここが原因 |
| 退避フォルダ | 約2か月前に自分たちが別フォルダへ移していた(約8,700ファイル・約270MB) | 中身は無事 |
| データベース | 残っている(19テーブル・公開記事5件・サイトURLも以前のまま) | 復旧に使える |
| SSL証明書 | 無料SSLが失効中の期間に更新されず、約1年前に期限切れ | 再設定が必要 |
原因はドメインではなく、失効中に「このサイトはもう使わないが、データは残す」という判断で、公開フォルダを丸ごと退避フォルダへ移していたことでした。退避した時点では正しい判断です。ただし、ドメインを取り直す判断があとから入ったことで、退避の事実が「404の原因」に変わりました。
復旧は、退避フォルダを公開フォルダの位置に戻すだけで済みました。戻した直後にトップページとログイン画面が200で開き、PHPのエラーは0件。その後、データベースの書き出しを取り直し、SSLの再設定とプラグインの更新へ進んでいます。
この例から言えるのは、再取得後の404は「ドメインの問題」として調べ始めると遠回りになる、ということです。DNSが合っていることを最初の1分で確かめ、あとはサーバーの中を見る。順番を決めておけば、原因には数分で届きます。
手順1:DNSを確かめる(ここが合っていればドメイン側は終わり)
最初に見るのは、ドメインがどのサーバーを向いているかです。ドメイン管理画面のネームサーバー設定と、DNSのAレコードを見ます。手元で確かめるなら、ターミナルやコマンドプロンプトで次のように調べられます。
nslookup 自分のドメイン
返ってきたIPアドレスが、契約しているサーバーのIPアドレス(サーバー管理画面に載っています)と一致していれば、ドメイン側の設定は正常です。
ここで一致していなければ、原因はドメイン側にあります。再取得したときに、ネームサーバーが取得先のサービスの初期値のままになっていることが多いです。サーバー会社が指定するネームサーバーに直し、反映を待ちます。DNSの反映は数分から数時間かかることがあります。
ここで大事なのは、一致していたら、もうドメインの設定は疑わないことです。ドメイン管理画面をいくら見直しても、サーバーの中身は戻りません。
手順2:公開フォルダを確かめる(404の正体はここにある)
次に、サーバー上でそのドメイン用の公開フォルダを見ます。共用のレンタルサーバーでは、ドメインごとに「public_html」のような名前の公開フォルダが割り当てられます。サーバーのファイルマネージャーか、FTP・SSHで接続して確かめます。
見分け方は404の画面そのものにもあります。サーバー会社の標準デザインの404ページが出ているなら、そのドメインの公開フォルダに、表示できるファイルが何も無い状態です。WordPressが動いていれば、404はWordPressのテーマが用意した画面になり、サーバー標準の画面にはなりません。
公開フォルダを見て、次の3つのどれに当たるかを判断します。
| 状態 | 意味 | 次の手 |
|---|---|---|
| 公開フォルダ自体が無い | ドメイン設定を再作成したか、フォルダを移した・消した | 退避先やバックアップを探す |
| フォルダはあるが空 | 中身を消したか、別の場所に移した | 同上 |
| ファイルはあるのに404 | 設定ファイル(.htaccess)や権限の問題 | 別の原因。この記事の範囲外 |
このとき、「自分たちで移した記録が無いか」を先に探すのが近道です。ドメイン失効中に「もう使わないサイト」として整理した作業があれば、その記録に退避先が書かれています。冒頭の例でも、退避時の記録に「復旧手順」まで添えてあったため、戻す作業自体は1手で終わりました。
サーバー内に退避フォルダも無い場合は、サーバー会社の自動バックアップ(多くは7〜14日分)と、手元のパソコンに残したバックアップを探します。ここで何も無ければ、サイトはゼロから作り直すことになります。
手順3:データベースを確かめる(ファイルだけ戻しても動かない)
WordPressのサイトは、ファイル(テーマ・プラグイン・画像)とデータベース(記事・設定・ユーザー)の2つで動いています。公開フォルダを戻しても、データベースが消えていれば「データベース接続確立エラー」になり、サイトは出ません。
サーバーの管理画面でデータベースの一覧を見て、そのサイトが使っていたデータベースが残っているかを確かめます。WordPressの設定ファイル(wp-config.php)に、使っているデータベース名・ユーザー名・接続先が書いてあるので、それと突き合わせます。
残っていれば、次の3点を見ておくと復旧後の手戻りが減ります。
- テーブルの数:WordPress標準で12前後、プラグインを入れていればそれ以上。極端に少なければ壊れている可能性がある
- 公開記事の数:以前の記事数と大きく違わないか
- サイトURLの設定:データベース内の「siteurl」「home」が、再取得したドメインと同じかどうか。ドメインが変わっていれば、ここを直さないとログイン後に別のURLへ飛ばされる
冒頭の例では、19テーブル・公開記事5件・サイトURLも以前のままで残っていたので、ファイルを戻すだけで表示まで進めました。
手順4:SSLを確かめる(失効中は自動更新が止まっている)
サイトが表示されるようになっても、https で開くと「この接続ではプライバシーが保護されません」と警告が出ることがあります。これは、ドメインが失効していた期間にSSL証明書の自動更新ができず、期限が切れたままになっているためです。
無料SSL(Let's Encryptなど)は、証明書を更新するときに「そのドメインが本当にこのサーバーを向いているか」を確認します。ドメインが失効中はこの確認が通らないので、更新は止まります。ドメインが戻れば、サーバーの管理画面から無料SSLを再設定するだけで復旧します。反映には、サーバー会社の案内で最大1時間程度かかります。
見落としやすいのは、SSLの再設定を忘れたまま「サイトは復活した」と判断してしまうことです。http では開けるので、確認する人の環境によっては問題に気づきません。復旧の確認は、必ず https の方で行います。
原因がドメイン側に無い場合の見分け方
「ドメインを取り直したのに直らない」と感じるときは、次の見分け方で切り分けると、どこを触るべきかがはっきりします。
| 症状 | 原因の場所 | 見るところ |
|---|---|---|
| DNSがサーバーを向いていない | ドメイン側 | ネームサーバー設定 |
| DNSは正しく、サーバー標準の404ページが出る | サーバー側(公開フォルダが空) | 公開フォルダ・退避先・バックアップ |
| DNSは正しく、WordPressのデザインの404が出る | サーバー側(記事やパーマリンク) | WordPressの設定 |
| 「データベース接続確立エラー」が出る | サーバー側(データベース) | データベースの有無と接続情報 |
| 表示されるが https で警告が出る | サーバー側(証明書) | SSL設定 |
| 200で開くが、別のサイトの内容が出る | サーバー側(ドメイン設定の紐付け) | ドメインがどのフォルダを向いているか |
最後の行は特に注意が要ります。HTTPのステータスが200だからといって、目的のサイトが出ているとは限りません。ドメインの設定を再作成したときに、別のサイトのフォルダを向いてしまい、他のサイトのトップページが表示される、ということがあります。ステータスコードだけで判断せず、タイトルや中身まで見て確認するのが原則です。
想定されるリスク:「使わない」判断で退避したデータが、あとから必要になる
ここまでの手順は復旧の話ですが、そもそも404の原因を作らないための設計もあります。ドメインが失効したサイトを整理するときは、次のように残しておくと、あとから方針が変わっても短時間で戻せます。
- 消さずに退避する:公開フォルダを削除せず、サーバー内の別フォルダへ移す。データベースも削除しない。容量が数百MB程度なら、残しておく負担はほとんどありません
- 退避先と復旧手順を記録に残す:「どのフォルダへ、いつ、なぜ移したか」「戻す手順」を1枚のメモにして、退避フォルダの中にも置く。復旧するのが別の担当者でも、記録を読めば1手で戻せます
- 手元にも控えを取る:サーバーの契約が切れる可能性もあるので、ファイル一式とデータベースの書き出しを手元のパソコンにも保存し、サーバー側とバイト数が一致することを確かめておく
- 失効中はSSLの更新が止まると知っておく:再取得後に警告が出ても慌てず、再設定の1手で済むことを手順に書いておく
- 再取得したら、まず自分たちの整理記録を読む:ドメイン側を疑う前に「失効中に自分たちが何をしたか」を確かめる。これが最も早い
このように残しておくと、「サイトは不要」という判断と「やはり必要」という判断のどちらに転んでも、失うものがありません。逆に、失効を機に公開フォルダとデータベースを消してしまうと、ドメインを取り直しても復旧できず、作り直しの費用がそのまま発生します。
復旧後にやること:公開の再開より先に更新とバックアップ
公開フォルダを戻してサイトが表示されたら、すぐに宣伝を再開するのではなく、次を先に済ませます。
- データベースの書き出しを取り直す:復旧直後の状態を1本残す。あとで更新に失敗しても、ここに戻れる
- SSLを再設定して https で確認する:前述のとおり
- WordPress本体とプラグインの更新を確かめる:1年止まっていたサイトは、複数の更新が溜まっています。特にページ作成系のプラグインは、メジャーバージョンをまたぐ更新で表示が崩れることがあるので、有料版のライセンスが有効かを先に確かめ、1つずつ更新して表示を見る
- 管理者のログイン情報を確かめる:1年前のパスワードが分からなければ、サーバー側からリセットする
- 検索エンジン側の登録を見直す:サーチコンソールの所有権が残っているか、サイトマップが送れるかを確かめる。1年間404だったページは検索結果から落ちていることが多く、戻るまで時間がかかります
止まっていたサイトを久しぶりに動かすときの確認項目は、ホームページを新しくしたのに検索で出てこないときにも整理しています。制作会社が変わっている場合に何を引き継ぐかは、制作会社を変えるときサイトの何を引き継ぐかを参照してください。
まとめ
ドメインを再取得したのにサイトが404のままのときは、次の順番で確かめます。
- DNSがサーバーを向いているかを最初に見る。合っていれば、ドメイン側はもう疑わない
- 公開フォルダに中身があるかを見る。サーバー標準の404ページが出ているなら、ここが空
- 自分たちで退避した記録が無いかを先に探す。失効中に整理したサイトは、退避先に中身が残っていることが多い
- データベースが残っているか、サイトURLの設定が今のドメインと合っているかを見る
- SSLは失効中に更新が止まっているので、再設定して https で確認する
- 復旧したら、バックアップと更新を先に済ませてから公開を再開する
そして、ドメインが失効したサイトを整理するときは、消さずに退避し、退避先と戻す手順を記録に残す。この2点を守っておけば、あとから「やはり使う」となっても、復旧は数分で終わります。
ドメインやサーバーの整理、止まっていたサイトの復旧についてのご相談は、お問い合わせからお送りください。