301転送ができないサイトのリダイレクト方法

301転送ができないサイトのリダイレクト方法

301転送ができないサイトのリダイレクト方法3選

1.現在の背景と目的
・現状: 旧サイト(○○.web.fc2.com)から、WordPressで作成した新サイト(○○.blog)へ移転した。
・課題: FC2ホームページは.htaccessが使えないため、サーバー側でのリダイレクト(301転送)ができない。
・状況: HTMLファイルが膨大にあり、手作業での修正は困難。検索エンジンに古いURLが残っているため、アクセスを新サイトへ流したい。

2. 三つの解決策
「.htaccess」が使えない環境での代替案として、以下の3パターンがある。

案A:meta refresh + JavaScript(推奨コード)
各HTMLファイルの内に記述し、ブラウザ機能で強制転送させる方法

html
<meta http-equiv="refresh" content="0;URL='https://○○.blog'">
<script>location.replace("https://○○.blog");</script>

案B:独自404ページ設定の活用(最も効率的)
ファイルが膨大で個別の書き換えが難しい場合に、FC2の機能を応用して「全ページを一括転送」する力技を使用する。
・旧ファイルを全削除(または移動)し、サイトをあえて「404(未発見)」状態にする。
・FC2管理画面の「404 File Not Found設定」に、上記のリダイレクトコードを書いたファイルを指定する。

案C:ローカルでの一括置換(SEO評価の維持に有利)
検索エンジンの評価を極力落とさず移転させるための手順
FTPで全ファイルをPCにダウンロード⇒置換ソフト(Repl-Ace等)で全ファイルの中身をリダイレクトコードに書き換える。⇒すべて上書きアップロードする。

3. 推奨される案Bの作業の流れ
最終的には不要なサイトなので、管理の手間を最小限にする「案B(404設定)」の手順が最もスムーズ。
・転送用ファイル作成:中身がリダイレクトコードだけの index.html を作成する。
・旧ファイルの整理:FC2ファイルマネージャーで、古いファイルを別フォルダへ移動(または削除)。
・404設定の適用:FC2の「404 File Not Found設定」で、作成した index.html を指定する。
・Googleへの通知:Search Console の「アドレス変更ツール」を使い、ドメイン移転をGoogleに報告する。

具体的な各設定
① FC2管理画面での「404設定」の場所
FC2ホームページ 管理画面にログイン⇒左側メニューにある「表示設定」をクリック⇒展開されたメニューの中から「404 File Not Found設定」を選択
「404 File Not Found設定」の画面で、「表示するページ」のプルダウンから、作成・アップロードした index.html(または転送用ファイル)を選択する。
「設定を変更する」ボタンを押して完了。
これで、古いURL(例:~/page1.html)にアクセスした人は、自動的にこの404ページ(=転送ページ)へ誘導される。
② Googleへの移転通知(アドレス変更ツール)のやり方
前提条件:Google Search Console に、旧サイト(FC2)と新サイト(独自ドメイン)の両方が登録(プロパティ追加)されている必要がある。
手順:Search Consoleで「旧サイト(FC2)」のプロパティを選択⇒左メニューの最下部にある「設定」(歯車アイコン)をクリック⇒中央付近にある「アドレス変更」という項目をクリック⇒「新しいサイトを選択」のリストから、「新サイト(○○.blog)」を選択⇒「検証して更新」をクリックする。
※この時、Googleが旧サイトから新サイトへのリダイレクトが動作しているか自動チェックする。
注意点:FC2ではサーバーレベル(301リダイレクト)が使えないため、このツールで「検証エラー」が出る場合がある。その場合は、この通知ツールは使えないが、ステップ1の404転送を設定しておくだけでも、Googleは時間をかけて徐々に新サイトを認識してくれる。

4.SEO的に最も丁寧な案Cの方法 
案Cの「ローカルでの一括置換(全ファイル上書き)」は、検索エンジン(Google)に「全てのページが個別に移転した」ことを最も正確に伝える、SEO的に最も丁寧な方法
手順の詳細
①旧サイトの全ファイルをPCにダウンロード
ブラウザ上のファイルマネージャーでは一括編集ができないため、FTPソフトを使って全ファイルをPC上の新しいフォルダ(例:「fc2_backup」)へダウンロードする。
②ソフト(Search and Replace や VS Code)を使って全ファイルの中身を一括置換
ここで、数百・数千あるファイルの中身を、一瞬で「転送コード」に書き換える。
ここでは、汎用性の高い を使った方法を例にします。
Visual Studio Code (VS Code)で「fc2_backup」フォルダを開き、Ctrl + Shift + H(置換ショートカット)を押し、検索ボックス(上段)に、正規表現モード(.* アイコン)をONにして以下を入力する。
入力: ^[\s\S]* (※「ファイルの中身すべて」という意味)
置換ボックス(下段)に、以下の転送コードを入力する。

html
<meta http-equiv="refresh" content="0;URL='https://snowoffice.blog'">
<script>location.replace("https://snowoffice.blog");</script>

「すべて置換」を実行して保存する。
これで、PC内の全てのHTMLファイルの中身が、ファイル名はそのままに、中身だけが転送コードに書き換わる。
③FC2サーバーへ上書きアップロード
FTPソフトで、中身を書き換えた「fc2_backup」フォルダ内のファイルをすべて選択し、FC2サーバーの元の場所へドラッグ&ドロップし、「上書き」を選択してアップロードする。
この方法のメリット
リンク切れが起きない: 検索結果に残っている old.html にアクセスしても、そのファイル自体が「転送ボタン」として存在し続けるため、確実に新サイトへ誘導できる。
Googleへの通知: 全てのURLが個別に転送設定(meta refresh)を持つため、Googleが「あ、このページはここに移ったんだな」と1ページずつ丁寧に理解してくれる。