.htaccessでリダイレクトをかける方法|301と302の使い分け
SEO サーバー Apache インフラ
結論
サイト移転やURL変更なら 「301リダイレクト(恒久的な移動)」 を使う。検索エンジンの評価(被リンクなど)を引き継ぐことができます。
リダイレクトの種類と使い分け
| コード | 意味と用途 |
|---|---|
| 301 Redirect | 恒久的な移動。旧URLの評価を新URLに引き継ぐ。サイト移転に。 |
| 302 Found | 一時的な移動。メンテナンス時や期間限定キャンペーンなどに。 |
よくある書き方の例
.htaccess ファイルの先頭に記述します。
1. ページ単位のリダイレクト
Redirect 301 /old-page.html https://example.com/new-page
2. wwwなしをwwwありに統一(RewriteEngine)
RewriteEngine On
RewriteCond % {HTTP_HOST} ^example\.com$
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
🚀 この場で.htaccessを生成する
注意点
- 記述ミスによるエラー —
.htaccessの記述に1文字でもミスがあると、サイト全体が「500 Internal Server Error」になります。必ずバックアップを取ってから編集しましょう。 - リダイレクトループ — AからB、BからAへリダイレクトを設定してしまうと、ブラウザがエラーを吐いて停止します。
- 反映の確認 — ブラウザにキャッシュが残るため、確認時は「シークレットモード」を使うか、
curl -Iコマンドでヘッダーを確認するのが確実です。