.htaccess 301 vs 302 リダイレクトの書き方とSEO評価の引き継ぎ

SEO サーバー Apache インフラ htaccess

サイトリニューアルやドメイン移転時に .htaccess ファイルを用いて設定する 301 リダイレクト(恒久的)302 リダイレクト(一時的) の選び方、記述ルール、および SEO 上の評価の引き継ぎガイドです。

1. オンライン .htaccess 生成ツール

転送ルール(301 / 302)と転送前後のパスを入力して、エラーのない .htaccess コードを生成します。

🚀 この場で.htaccessを生成する

  

2. 301 リダイレクト vs 302 リダイレクト 比較表

比較項目HTTP 301 (Moved Permanently)HTTP 302 (Found / Temporary)
転送の性質恒久的な移動 (二度と旧URLに戻らない)一時的な移動 (一時的に他ページを表示)
SEO評価 (PageRank)新URLへ完全に引き継がれる旧URLに保持される (新URLには引き継がれない)
検索インデックスインデックスが新URLに差し替わる旧URLが検索結果に残り続ける
主な用途サイト移転、URL構造の変更、HTTP→HTTPS化メンテナンス画面表示、A/Bテスト、期間限定特設ページ

3. .htaccess での 2 つの記述方法

① 最もシンプルな記述:Redirect ディレクティブ (mod_alias)

パス指定で単純に別URLへ飛ばす場合に適しています。

# 301 リダイレクト (旧パス 新完全URL)
Redirect 301 /old-page.html https://example.com/new-page

# 302 リダイレクト
Redirect 302 /campaign.html https://example.com/special-event

② 複雑な条件判定:RewriteRule ディレクティブ (mod_rewrite)

正規表現を用いてパラメータ保持やディレクトリ構造一括置換を行う場合に使用します。

RewriteEngine On

# 301 転送例
RewriteRule ^old-directory/(.*)$ https://example.com/new-directory/$1 [R=301,L]

4. 設定後のレスポンスヘッダー確認コマンド (curl)

ブラウザのキャッシュが原因でリダイレクトの動作確認が正しく行えない場合は、ターミナルで curl -I を実行してステータスコードを直接確認します。

curl -I https://example.com/old-page.html

# 期待される出力結果:
# HTTP/1.1 301 Moved Permanently
# Location: https://example.com/new-page