ホーム › 質問掲示板 › サーバーサイドエンジニア › Apacheウェブサーバー › .htaccessでリダイレクト設定
タグ: popular
5件の投稿を表示中 - 1 - 5件目 (全5件中)
-
投稿者投稿
-
2025年7月26日 4:30 PM #155
.htaccessでリダイレクト設定
beginner web designer
Webサイト内の該当ページのURLを変更しなければいけません。

既存のURLにアクセスがあった時に自動的に新しいURLに転送するために、
.htaccessでリダイレクトを書かなければいけませんよね?
どのように書けばいいですか?他に何かすべきことはありますか?
Apacheが使用されている前提の話で進めます!
リダイレクトの書き方
RewriteEngine On RewriteRule ^old-url$ /new-url [R=301,L]内容としては
RewriteEngine Onで
Apache のmod_rewriteモジュールを有効化して、
URL書き換え機能が動作するように設定RewriteRule [マッチパターン] [リダイレクト先] [オプション]のように記述
オプションについて補足します!
R=301は
HTTPステータスコード「301(恒久的な移動)」を返します。
なお、このオプションがないとリダイレクトしても、
ブラウザのURLが /old-urlのままでとなります。そのため、このオプションを設定し/new-urlを外部的に表示することで、
検索エンジンに正しく認識されます!

- Lオプションは「このルールを適用したら、他のルールは見ないで処理を終了してね」という指示です。
これがないと予期しない連鎖リダイレクトが発生する可能性があります。
無難につけておくのが一般的です。
WebページのURL変更でほかにすべきこととしては以下の通りです!
- 内部リンクを更新
こちら対応しなくても、.htaccessでリダイレクトによってリンク切れせず、
ページは表示されます。
しかし「古いページ → リダイレクト → 新しいページ」という2段階の処理が発生し、
わずかですが読み込み時間が増加します、、
また.htaccessファイルに問題が生じた場合に、内部リンクが一斉に切れてしまうリスクもあります
主要なナビゲーション(メニューやフッター)だけでも更新しておくと安心です。 - Googleサーチコンソールでサイトマップ・インデックス登録

基本的に検索エンジンの認識を「早める」ための手段なので、
301リダイレクトが正しく設定されていれば、必須ではないですしばらく経って検索結果に表示されなければ必要に応じて対応を検討すれば十分かもしれません
.htaccessファイルをどこのディレクトリに置くかについて説明します!
.htaccessは設置したディレクトリおよび下位のディレクトリに対して設定が適用されます。
.htaccessは「そのディレクトリへのアクセス」をキャッチして処理するため、
リダイレクト元のURLが属するディレクトリ、もしくはより上位のディレクトリに置く必要があります。そのうえで「必要最小限の影響範囲で設定する」という意味でリスクが低いのは、
より下層のディレクトリになります。またドキュメントルートに1つ配置して、全体をまとめて管理する運用もあるかと思います。

-
投稿者投稿
5件の投稿を表示中 - 1 - 5件目 (全5件中)